数组模拟求阶乘

Posted qq-1585047819

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组模拟求阶乘相关的知识,希望对你有一定的参考价值。

int gdc(int n){
    int num[200]={1};  //保存这个位置的数
    int jw=0,len=1;
    for(int i=2;i<=n;i++){
         for(int j=0;j<len;j++){
            int zhi=(num[j]*i+jw)/10;
            num[j]=(num[j]*i+jw)%10;
            jw=zhi;
         }
         for(;jw>0;jw/=10){
            num[len++]=jw%10;
         }
    }
    for(int i=len-1;i>=0;i--){
        printf("%d",num[i]);
    }
}

int main()
{
    int n;
    while(scanf("%d",&n),n>=0){
        gdc(n);
        printf(" ");
    }
    return 0;
}

以上是关于数组模拟求阶乘的主要内容,如果未能解决你的问题,请参考以下文章

求较大整数n的阶乘,因为n较大时n的阶乘超出了正常类型的表示范围,采用数组进行操作(java实现)

C 数组模拟阶乘运算

求较大整数n的阶乘,因为n较大时,n的阶乘超出了正常类型的表示范围,可以采用数组进行操作(c实现)

求n的阶乘

大数求阶乘(防溢出)

求n的阶乘