求出0~100000之间的所有“水仙花数”并输出。
#include<stdio.h>
#include<math.h>
int main()
{
for (int i = 0; i <100000; i++)
{
int count = 1;
int n = i;
while (n > 9)//求位数
{
count++;
n /= 10;
}
int sum = 0;
int m = i;
while (m)//求和
{
int b = m % 10;
sum += (int)pow(b, count);
m /= 10;
}
if (i == sum)
{
printf("%d ", i);
}
}
return 0;
}
最开始我把#include<math.h>头文件忘记引入了,结果一直都是0,还是有点粗心啊小佩同学!