1.while循环条件不能用i%10,40%10=0。
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
int a[10];
void jicheng()
{
a[0]=1;
for(int i=1; i<=9; i++)
{
a[i]=a[i-1]*i;
}
}
int main()
{
jicheng();
int sum;
for(int i=1; i<=10*a[9]; i++)
{
sum=0;
int t=i;
while(i)//-->不能用i%10
{
sum=sum+a[i%10];
i=i/10;
}
i=t;
if(sum==i)
{
printf("%d\n",i);
}
}
return 0;
}