题目来源:翁恺C语言入门
3<=N<=7
1.先用pow(,)求出遍历的范围
2.用for遍历范围内所有数,再计算每个位上数的N次幂并求和。
有改进建议可以说下
#include <stdio.h>
#include <math.h>
int main() {
int n;
scanf("%d", &n);
int j = 0;
int sum = 0;
for (int i = pow(10, n) / 10; i < pow(10, n); i++) {
j = i;
sum = 0;
do {
sum = sum + pow(j % 10, n);
j /= 10;
} while (j > 0);
if (sum == i) {
printf("%d\n", i);
}
}
}