//作者:小代码
//2013年5月30日17:36:46
//题目:
//输出所有的"水仙花数".所谓"水仙花数"是指这样的一个三位数:
//其各位数字的立方和等于该数本身。
//例如:371是一个"水仙花数",371=3^3+7^3+1^3.
//
//编译器:CodeBlocks10.05
#include <stdio.h>
#include<stdbool.h>
int main()
{
bool fun_1029( int in );//判断in是否为水仙花数字
int i;
for( i = 100; i < 1000; i++ )
{
if( true == fun_1029( i ) )
{
printf("%d ",i);
}
}
printf("\n\nHello World\n");
system("pause");
return 0;
}
//判断in是否为水仙花数字
bool fun_1029( int in )
{
int bai;//保存百位数字
int shi;//保存十位数字
int ge;//保存个位数字
bai = in / 100;//求百位
shi = ( in - bai * 100 ) / 10;//求十位
ge = in - bai * 100 - shi * 10;//求各位
int temp = bai * bai * bai + shi * shi * shi + ge * ge * ge;//求各位数字的立方和
if( temp == in )//判断并分返回结果
{
return 1;
}
else
{
return 0;
}
}
运行效果: