方法1:
#include <stdio.h>
#include <math.h>
int main()
{
int i,j,he;
for(i=100;i<1000;i++)
{
he=0;
j=i;
do
{
he=he+pow(j%10,3);
j=j/10;
}
while(j!=0);
if(he==i)
printf("%d\n",i);
}
return 0;
}
方法2:
#include <stdio.h>
int main()
{
int i,j,k,l;
printf("水仙花数:",l);
for(l=100;l<1000;l++)
{
i=l/100;
j=(l-i*100)/10;
k=l-i*100-j*10;
if(l==i*i*i+j*j*j+k*k*k)
printf("%d\n",l);
}
return 0;
}
方法:3:
#include<stdio.h>
int main()
{
int i,j,k,n;
printf("水仙花数:");
for(n=100;n<1000;n++)
{
i=n/100;
j=n/10-i*10;
k=n%10;
if(n==i*i*i+j*j*j+k*k*k)
printf("%d\n",n);
}
return 0;
}
运行结果如下:
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPR9kMZRlT4FEROBDOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL5cTM3MzNyYTM3ADNwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)