一个三位数,他每一位数的立方和等于这个数本身,则这个数为水仙花数。例如153=1^3+5^3+3^3,所以他是一个水仙花数,下面要用c语言来求出100-用户输入的数之间的水仙花数。
#include<stdio.h>
int main()
{
int g,s,b,num,gw,sw,bw,i=100,sum;
printf("输入一个100-999的整数:");
scanf("%d",&num);
for(i=100;i<=num;i++)
{
b=i/100; //取他的百位数
s=((i%100)/10); //取十位数
g=((i%100)%10); //取个位数
gw=(g*g*g);
sw=(s*s*s);
bw=(b*b*b);
sum=(gw+sw+bw);
if(i==sum) //判断是否为水仙花数,如果是,输出
{printf("%d\n",i);}
}
return 0;
}