编辑代码

#include <stdio.h>

int main()
{
	int a;
	printf("请输入一个整数n(3<=n<=7):");
	scanf("%d", &a);
	int first = 1;
	for (int i = 1; i < a; i++) {
		first *= 10;
	}//先求位数
	printf("该数的水仙花数为:");
	for (int j = 124; j < first * 10; j++) {
		int k;
		int n = j;
		int sum = 0;
		for (int b = 0; b < a; b++) {
			int d=n % 10;
			n /= 10;
			int p = d;
			for (k = 1; k < a; k++) {
				p *= d;
			}
			sum += p;
		}if (sum == j)
			printf("%d ", j);
	}
	printf("\n");
	return 0;
}