求1000的阶乘,请大家帮忙修改一下
#include<stdio.h>#define N 1000
int main()
{
long int a[256];
int i,t,j=0;
for(i=1;i<255;i++)
{
a[i]=0;
}//使a[i]除了a[0]以外全为零
for(i=1,a[0]=1;i<=N;i++)
{
for(t=0;a[t]>0;t++);
//从最高位算起
for(--t;t>=0;t--)
{
a[t]*=i;//累加
for(j=t;a[j]>=1000;j++)
{
a[j+1]+=a[j]/1000;
a[j]=a[j]%1000;
}
}
}
for(t=0;a[t]>0;t++);
t--;
for(;t>=0;t--)
{
printf("%ld",a[i]);
}
return 0;
}