N!
题目信息:
给出一个N,范围是从0到10000,计算N的阶乘,
#include<stdio.h>
#include<string.h>
int a[70000];
int main()
{
int n,i,k,l,c;
while(scanf("%d",&n)!=EOF)
{
memset(a,0,sizeof(a));
a[0]=1;l=1;
for(i=2;i<=n;++i)
{
for(k=0,c=0;k<l;++k)
{
a[k]=a[k]*i+c;
if(a[k]>9)
{
c=a[k]/10;
a[k]=a[k]%10;
}
else c=0;
}
while(c>0)
{
a[k++]=c%10;
c/=10;
}
l=k;
}
for(i=l-1;i>=0;i--)printf("%d",a[i]);
printf("\n");
}
return 0;
}