大数阶乘。代码比较简单。
#include<stdio.h>
#include<string.h>
#define MAXN 25000 // 如果你的阶乘N比较大,建议大一点 int result[MAXN];
int main()
{
int i,j,n;
scanf("%d",&n); // memset函数的作用将某一段内存设置成指定的值
// 参数1:内存首地址 参数2:指定的值 参数3:内存大小
memset(result,,sizeof(result));
result[]=;
for(i=;i<=n;i++)
{
int c=;
for(j=;j<MAXN;j++)
{
int s=result[j]*i+c;
result[j]=s%;
c=s/;
}
} for(j=MAXN-;j>=;j--)
if(result[j])
break;
for(i=j;i>=;i--)
printf("%d",result[i]);
printf("\n");
return ;
}