这个3-7位的水仙花,试了好几次,输出一直是1,到底哪里出现问题了,求解
{
int n;
scanf_s("%d", &n);
int a=1;
int b=1;
int sum = 0;
int h=0;
while (a < n) {
b = b * 10;
a++;
}
int t = b;
while (t < b * 10) {
for (h = 0; h < n;h++) {
int c = t / b;
t = t % b;
b /= 10;
int d = c;
int f = 1;4
while (f < n) {
int g = d * d;
f++;
if (f == n) {
sum = sum + g;
}
}
}
t++;
h = 0;
}
if (sum == t) {
printf("%d", t);
}
return 0;