输出所有的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于读数本身,例如,153是一水仙花数,因为153=111+555+333
上代码:
1.把所有三位数都遍历,验证为水仙花数则输出。
#include<stdio.h>
int main()
{
int n,b,s,g;
for(n=100;n<1000;n++)
{
b=n/100;
s=(n-100*b)/10;
g=n%10;
if(n==b*b*b+s*s*s+g*g*g)
printf("%d\n",n);
}
return 0;
} ```
2.另一种表现方式
```c
#include<stdio.h>
int main()
{
int g,s,b;
for(g=0;g<10;g++)//循环的嵌套,分请层次
for(s=0;s<10;s++)//g代表个位,s代表十位,b代表百位
for(b=1;b<10;b++)
if(g*g*g+s*s*s+b*b*b==b*100+s*10+g)
printf("%d%d%d\n",b,s,g);
return 0;
}