精度计算-大数阶乘-ACM常用算法

语法 

  int result=factorial(int n);

参数:

  n的阶乘

返回值:

  阶乘结果的位数

注意:  

  本程序直接输出n!的结果,需要返回结果请保留long a[]

 inlclude <math.h>

源程序:  

int factorial(int n) {   long a[10000];   int i,j,l,c,m=0,w;   a[0]=1;   for(i=1;i<=n;i++) {   c=0;   for(j=0;j<=m;j++) {   a[j]=a[j]*i+c;   c=a[j]/10000;   a[j]=a[j]%10000;   }  if(c>0) {m++;a[m]=c;}   }   w=m*4+log10(a[m])+1;   printf("\n%ld",a[m]);   for(i=m-1;i>=0;i--) printf("%4.4ld",a[i]);   return w; } 

相关文章

自1998年我国取消了福利分房的政策后,房地产市场迅速开展蓬...
文章目录获取数据查看数据结构获取数据下载数据可以直接通过...
网上商城系统MySql数据库设计
26个来源的气象数据获取代码
在进入21世纪以来,中国电信业告别了20世纪最后阶段的高速发...