/*求N位数中所有的水仙花数*/
#include<stdio.h>
#include<math.h>
#define N 3
int main()
{
int j,n=1,i,t;
printf("N位数中的水仙花数有:\n");
for (i = 1; i < N; i++)
n *= 10;//找到最小N位数
for (i = n; i < n * 10; i++)//枚举法从最小到最大N位数都判断到
{
int d = i, sum = 0,k;//累加器sum在每个数判断完后归0
for (j=0;j<N;j++)
{
int p = 1;
t = d % 10;
for (k = 0; k < N; k++)
p *= t; //得到N次幂
sum += p;
d = d / 10;
}
if (sum == i)
printf_s("%d\n", i);
}
return 0;
}
求N位数中所有的水仙花数
最新推荐文章于 2024-03-03 16:11:21 发布