```
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int aa[99999];
int main()
{
long long int n,j,m=1;
memset(aa,0,sizeof(aa));
aa[0]=1;
scanf("%d",&n);
for(int i=1;i<=n;i++){
int t=0;
for(j=0;j<m;j++){
aa[j]=aa[j]*i+t;
t=aa[j]/10;
aa[j]=aa[j]%10;}
if(t>0){
aa[m++]=t;
}}
for(int i=m-1;i>=0;i--){
printf("%d",aa[i]);
}
return 0;
}
```这个代码有什么问题