C语言程序作业3

发布时间 2023-11-21 22:38:19作者: mystayx

1.水仙花数是指各位数字的立方和等于该数本身的三位数。请编程计算并输出所有的水仙花数。

**输出格式要求:”%6d”

#include<stdio.h>

int main()

{

int i,a, b, c,sum;

for (i = 100; i > 99 && i < 1000; i++)

{

c = i / 100;

b = (i - c * 100) / 10;

a = i - c * 100 - b * 10;

sum = a * a * a + b * b * b + c * c * c;

if (sum == i)

printf("%6d", i);

}

return 0;

}

 

2.古代《张丘建算经》中有一道百鸡问题:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一。百钱买百鸡,问鸡翁、母、雏各几何?其意为:公鸡每只5元,母鸡每只3元,小鸡3只1元。请用穷举法编程计算,若用100元买100只鸡,则公鸡、母鸡和小鸡各能买多少只。

**输出格式要求:

标题行"Cock\tHen\tChick\n"

数据行"%d\t%d\t%d\n"

 

#include<stdio.h>
int main()
{
    int Chick, Hen, Coke;
    printf("Cock\tHen\tChick\n");
    for (Coke = 0; Coke <= 100; Coke++)
    {
        for (Hen = 0; Hen <= 100; Hen++)
        {
            Chick = 100 - Coke - Hen;
            if ((5 * Coke + 3 * Hen + (1.0 / 3) * Chick) == 100)
                printf("%d\t%d\t%d\n", Coke, Hen, Chick);
        }
    }
    return 0;
}

 

3.请按如下形式编程输出九九乘法表。

 

#include<stdio.h>
int main()
{
    int i, j;
    for (i = 1; i <= 9; i++) {
        printf("%4d", i);
    }
    printf("\n");
    for (i = 1; i <= 9; i++) {
       printf("%4c", '-');
    }
    printf("\n");
    for (i = 1; i <= 9; i++)
    {
        for (j = 1; j <= 9; j++)
        {
            if (i > j)
            {
                printf("    ");
            }
            else
            {
                printf("%4d", i * j);
            }
        }
        printf("\n");
    }
    return 0;
}

4.一辆卡车违反了交通规则,撞人后逃逸。现场有三人目击了该事件,但都没有记住车号,只记住车号的一些特征。甲说:车号的前两位数字是相同的;乙说:车号的后两位数字是相同的,但与前两位不同;丙是位数学家,他说:4位的车号正好是一个整数的平方。请根据以上线索协助警方找出车号,以便尽快破案,抓住交通肇事者。

**无输入提示信息和输入数据

**输出格式要求:"k=%d,m=%d\n"

#include<stdio.h>  
int main()
{
    int i = 0, j = 0, k = 1, m = 0;
    for (i = 1; i < 9; i++)
    {
        for (j = 1; j < 9; j++)
        {
            k = i * 1000 + i * 100 + j * 10 + j;
            for (m = 1; m < 100; m++)
            {
                if (k == m * m)
                    printf("k=%d,m=%d\n", k, m);
            }
        }
    }
    return 0;
}