题目:水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身,输出100到999所有的水仙花数。
第一种方法:
#include<stdio.h>
void main()
{
int b,s,g,n;
for(n=100;n<999;n++)
{
b=n/100;
s=n/10%10;
g=n%10;
if(n==(b*b*b+s*s*s+g*g*g))
printf("%d/n",n);
}
}
第二种方法:
#include<stdio.h>
void main()
{
int b,s,g,j;
for(b=1;b<=9;b++)
{
for(s=0;s<=9;s++)
{
for(g=0;g<=9;g++)
{j=b*b*b+s*s*s+g*g*g;
if(j==(b*100+s*10+g))
printf("%d/n",j);
}
}
}
}
输出结果相同:
153
370
371
407