试题描述
输出所有的“水仙花数”。所谓的水仙花数是一个3位数,其各位数字立方和等于该数本身。例如,153是水仙花数,因为153 = 13 + 53 + 33。
请编程计算并从小到大输出所有水仙花数。
输入
无输入。
输出
输出若干行,每个水仙花数占一行。
数据范围
我的代码哪里有纰漏问题吗?为啥拿不了满分,只得了20分。
输出为int范围的整数
#include<stdio.h>
#include<math.h>
int main ()
{
for(int i=100;i<=999;i++){
int a,b,c;
a=i/100;
b=((i/10))%10;
c=i%10;
int sum=pow(a,3)+pow(b,3)+pow(c,3);
if(sum==i){
printf("%d\n",i);
}
}
return 0;
}