题目描述 输出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,
其各位数字的立方和等于该数本身。
例如,153是一个水仙花数,因为153=13+53+33
输入 无
输出 每行输出一个水仙花数。
样例输入 无
样例输出
153
370
371
407
#include<stdio.h>
int main()
{
int i=1,a=0,b=0,c=0;
for (i=1;i<=500;i++) //由题目条件可知,水仙花数只在0~500之间,所以先造个0~500的循环轮
{
c=i%10; //c%10 代表输出数值的末位
b=(i/10)%10; //此语句代表输出数值的第二位,因为都是整形变量,所以相除只取整数部分
a=i/100; //此语句代表输出数值的第一位。
if ((c*c*c+b*b*b+a*a*a==i)&&(i!=1)) //验证两者是否相等
printf("%d\n",i);
}
return 0;
}