原题链接:
[编程入门]水仙花数判断 - C语言网 (dotcpp.com)
思路分析:
第一步:建立一个用于循环的变量 i 。
第二步:写一个判断水仙花数的函数。水仙花数的特征就是个位数的立方和 + 十位数的立方和 + 百位数的立方和 = 它自己本身。% 10 就可以取下一个数的最后一位,然后在 / 10,就可以继续取下一位,再把取下的数的立方和全都加起来再返回。
第三步:循环遍历所有的三位数,然后把符合条件的数据输出即可。
代码实现:
#include<stdio.h>
int is_nar_num(int n)
{
int x = 0, y = 0;
while (n != 0)
{
x = n % 10;
y += x * x * x;
n /= 10;
}
return y;
}
int main()
{
int i = 0;
for (i = 100; i <= 999; i++)
{
if (is_nar_num(i) == i)
printf("%d\n", i);
}
return 0;
}