问题分析:水仙花数的特征是是一个三位数,它的每位上的数的立方和等于这个数本身,所以要想找出千以内的所有水仙花数,需要用到穷举法。而穷举法可以用一个for循环,也可以用三层for循环,而本程序用的是三层for循环。
源代码:
#include<stdio.h>
main()
{
int i,j,k,m;
for(i=1;i<=9;i++)
for(j=0;j<=9;j++)
for(k=0;k<=9;k++)
{
m=100*i+10*j+k;
if(m==i*i*i+j*j*j+k*k*k)
printf("%d ",m);
}
}
运行效果图: