数组:
#include<stdio.h>
int main()
{
int i,j,carry,count,n;
while(scanf("%d",&n)!=EOF){
int N[99999]={1},temp;
count=1;
for(i=2;i<=n;i++){
carry=0;
for(j=0;j<count;j++){
temp=N[j]*i+carry;
N[j]=temp%10;
carry=temp/10;
}
while(carry){
N[count]=carry%10;
carry=carry/10;
count++;
}
}
for(i=count-1;i>=0;i--)
printf("%d",N[i]);
printf("\n");
}
return 0;
}