具有递归的因子

问题描述 投票:0回答:1
#include <stdio.h>
long int fact(int n);

int main()
{
    int n;
    printf("Enter number\n");
    scanf("%d",&n);
  printf("Factorial:%ld\n",fact(n));
    return 0;
}


long int fact(int n)
 {
   if(n!=1)
   return n*fact(n-1);

    }

我试图通过递归获得数字的阶乘。但是我每次都得到0。这段代码出了什么问题?

c recursion factorial
1个回答
-1
投票
long int fact(int n)
{
    return n==1? 1 : n*fact(n-1);
}
© www.soinside.com 2019 - 2024. All rights reserved.