#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
int main()
{
//输出0-100000内的自幂数(水仙花数)
int i = 0;
for (i = 0; i < 1000000; i++)
{
//判断i是否为自幂数(水仙花数)
//1.计算i的位数--n位数
int n = 1;
int tmp = i;
int sum = 0;
while (tmp / 10)
{
n++;
tmp = tmp / 10;
}
//2.计算i的每一位的n次方之和 sum
tmp = i;
while (tmp)
{
sum = sum + pow(tmp % 10, n);//pow函数计算每一位的n次方
tmp = tmp / 10;
}
//3.比较i==sum
if (i == sum)
{
printf("%d ", i);
}
}
return 0;
}
水仙花数问题
原创
©著作权归作者所有:来自51CTO博客作者酸酸的果冻的原创作品,请联系作者获取转载授权,否则将追究法律责任
下一篇:喝汽水问题
![](https://ucenter.51cto.com/images/noavatar_middle.gif)
提问和评论都可以,用心的回复会被更多人看到
评论
发布评论
相关文章
-
水仙花数
水仙花数两种方法
取模 #include 整型变量 水仙花数 for