一个三位数,满足各位3次方和等于该数本身就是 水仙花数 如153=1^3+5^3+3^3是水仙花数,其实这也是我们的作业之一。我使用的拆数字的方法为循环依次拆最后一位。 P.S.由于博客原因缩进是难免不规范的。
#include <stdio.h>
int sum(int s)
{
int n = 0,sum=0;
while(s>0)
{
n = s%10;
sum =sum + (n*n*n);
s= s/10;
}
return sum;
}
int main()
{
int i,a;
printf("水仙花数有\n");
for(i = 100;i < 1000;i++)
{
a = sum(i);
if(i == a)
printf("%d\t",i);
}
return 0;
}
运行结果