I00012 打印三位数的水仙花数及其个数

各个位数的立方数之和等于数本身的数,称为水仙花数。

这里使用穷举法打印3位数的水仙花数。

程序的关键是如何取出给定数的各个位的值。

另外需要注意的一点是,求和变量的初值是零。乘积变量的初值则为1。

I00012 打印三位数的水仙花数及其个数_第1张图片

程序如下:

/* 打印三位数的水仙花数及其个数 */

#include 

int main(void)
{
    int sum=0, d1, d2, d3, i;

    for(i=100; i<= 999; i++) {
        d1 = i / 100;
        d2 = i % 100 /10;
        d3 = i % 10;
        if(d1 * d1 * d1 + d2 * d2 * d2 + d3 * d3 * d3 == i) {
            printf("%d\n", i);
            sum++;
        }
    }

    printf("sum=%d\n", sum);

    return 0;
}
运行结果:

153
370
371
407
sum=4

转载于:https://www.cnblogs.com/tigerisland/p/7564863.html

你可能感兴趣的:(I00012 打印三位数的水仙花数及其个数)