注意:1.水仙花数是指一个 3 位数,它的每个位上的数字的 3次幂之和等于它本身
链接:水仙花数_百度百科
2.printf(" "); 空格可直接打出
3.注意换行代码的位置( printf("\n"); )
\n表示换行,输出换行即换行
一、1000以内的水仙花数
#include <stdio.h>
int main()
{
printf("输出水仙花数:\n");
int i,a,b,c,sum;
for(i=100 ; i<1000; i++){
a = i%10;
b = i/10%10;
c = i/10/10%10;
sum=a*a*a+b*b*b+c*c*c;
if(i==sum)
printf("%d ", i);
}
printf("\n");
return 0;
}
二、判断一个三位数是不是水仙花数
#include <stdio.h>
int main()
{
while(1)
{
int i,a,b,c,sum;
printf("输出三位数:\n");
scanf("%d",&i);
a = i%10;
b = i/10%10;
c = i/10/10%10;
sum=a*a*a+b*b*b+c*c*c;
printf("它的每个位上的数字的 3次幂之和等于:%d\n",sum);
if(i==sum)
printf("所以%d是水仙花数\n\n", i);
else
printf("所以%d不是水仙花数\n\n", i);
}
return 0;
}