问题描述:输出所有的水仙花数
思路分析:
①确定什么数是水仙花数**
②水仙花数的特征怎么通过代码实现
水仙花数”是指一个3位数,其中各位数字的立方和等于其本身。
这样我们可以确定用来表示水仙花数的i的范围是100<i<1000;
i=aaa+bbb+ccc;
a,b,c分别表示百位,十位,个位
自变量是i,因变量是a,b,c,那么我们需要想办法将a,b,c用i表示出来
a = i / 100;
b = i / 10 % 10;
c = i % 10;
#define _CRT_SECURE_NO_WARNINGS 1
//防止visual studio2013以上版本scanf报错,vc6.0环境可忽略
#include<stdio.h>
int main()
{
int a, b, c, i;
printf("水仙花数为:\n");
for (i = 100; i < 1000; i++)
{
a = i / 100;
b = i / 10 % 10;
c = i % 10;
if (i == a * a * a + b * b * b + c * c * c)
{
printf("%d ", i);
}
}
return 0;
}
是不是很简单呢?