大数阶乘(C语言实现)

来源:互联网 发布:sql内连接的意义 编辑:程序博客网 时间:2024/06/05 14:31

本来java里面会有大数类比较容易实现这些大数的运算,但是用c语言就要用到一些转化了,一下附上源代码

#include<stdio.h> #include<string.h>int a[1000001];  int main()  {           int n;      while (~scanf("%d",&n))    {     int len=1;     a[0]=1;//定义a[0]=1;      for(int i=2;i<=n;i++)   {            int b=0;            for(int j=1;j<=len;++j)    {               int t=a[j-1]*i+b; //注意是a[j-1]             a[j-1]=t%10;               b=t/10;               /*if(j==len&&b!=0)                   len++;  */  }           while (b) {        len++;        a[len-1]=b%10;        b/=10; }     }          for(i=len;i>0;--i)          printf("%d",a[i-1]);      printf("\n");     }    return 0;}  


原创粉丝点击