大数阶乘 我的ACM的第一步!

#include <iostream.h>

#define ARRAYNUL 10000
#define NUMMBER 999
int mainK()
{
int a[ARRAYNUL];
int i,j,k;
int flag=0,temp=0;
for(i=0;i!=ARRAYNUL;++i)
a[i]=0;
a[ARRAYNUL-1]=1;
for(i=2;i!=NUMMBER+1;++i)
{
for(j=ARRAYNUL-1;j!=-1;--j)
a[j]*=i;
for(j=ARRAYNUL-1;j!=-1;--j)
{
a[j-1]=a[j]/10+a[j-1];
a[j]=a[j]%10;
}
}
for(i=0;i!=ARRAYNUL;++i)
{
if(a[i]!=0)
flag=1;
if(flag)
cout<<a[i];
}
return 0;
}



posted @ 2010-05-19 18:47  BuildNewApp  阅读(264)  评论(0编辑  收藏  举报