c語言_遞迴

ʇɹɐǝɥ ʎɯ發表於2020-12-05

用函式編寫計算整數n的階乘n!

#include<stdio.h>
long Fact(int n);    //宣告函式
int main()
{
    int n;
    long result;
    printf("Input m:");
    scanf("%d",&n);
    result=Fact(n);
    if(result==-1)
        printf("data error");
    else
        printf("%d! = %ld\n",n,result);
    return 0;
}

//函式功能:計算整數n的階乘n!(n<0時返回-1)
long Fact(int n)
{
    if(n<0)
        return -1;
    else if(n==0 || n==1)
        return 1;
    else
        return (n*Fact(n-1));      //遞迴呼叫,利用(n-1)!計算n!
}

相關文章