/**
* 【程序3】
* 题目:打印出所有的“水仙花数”,所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数
* 本身。例如:153是一个“水仙花数”,因为153=1的三次方+5的三次方+3的三次方。
* 程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。
*
* 思路:分解多位数--->使用求余:%;除运算:/
* 如:153 = 1*1*1 + 5*5*5 + 3*3*3
*/
#include<stdio.h>
void main()
{
int n;
int ge, shi, bai, x;
printf("输出100-999所有水仙花数:\n");
for (n=100; n<1000; n++){
ge = n % 10;
shi = n / 10 %10;
bai = n / 100;
if (n == ge*ge*ge + shi*shi*shi + bai*bai*bai)
{
printf("%d\n", n);
}
}
}