大数阶乘
时间限制:
3000 ms | 内存限制:
65535 KB
难度:
3
# include<stdio.h> # include<string.h> int main() { int f[20000]; int i,j,n,c,s; scanf("%d",&n); memset(f,sizeof(f)); f[0] = 1; for(i = 2; i<=n; i++) { c = 0; for(j = 0; j < 20000; j++) { s = f[j] * i + c; f[j] = s % 10; c = s / 10; } } for(j = 20000-1;j>=0; j--) { if(f[j]) break; } for(i = j; i >= 0; i--) printf("%d",f[i]); printf("\n"); return 0; }