“水仙花数”是指一个三位数,其各位数字的立方和确好等于该数本身,如;153=1^3+5^3+3^3,则153是一个“水仙花数”。
求出100~999之间的所有“水仙花数”并输出。
#include <stdio.h>
#include <math.h>
int main()
{
printf("100~999中间的水仙花数有:");
//遍历100~999
for (int i = 100;i < 1000;++i)
{
//分别拿出他们的百位,十位,和个位
double a = i / 100;
double b = i % 10;
double c = (i / 10) % 10;
//判断他们是否满足水仙花数的规则,满足打印,不满足继续
if (i == pow(a, 3) + pow(b, 3) + pow(c, 3))
printf("%d ", i);
}
printf("\n");
system("pause");
return 0;
}
输出结果: