#include<stdio.h>
#include<math.h>
//输出100000以内的自幂数。
//自幂数是指一个n位数,它的每个位上的数字的n次幂之和等于它本身。
int main()
{
int i;
for (i = 0; i <= 100000; i++)
{
int sum = 0;
int tmp = i;
int n = 1;//数字的位数
while (tmp/10)
{
n++;
tmp /= 10;
}
tmp = i;
while (tmp)
{
sum += pow(tmp % 10, n);//(tmp%10)的n次方;
tmp /= 10;
}
if (sum==i)
{
printf("%d ", i);
}
}
return 0;
}