遞歸求n的階乘c語言編程

編一個函數(shù)n!。主函數(shù)求5!*7!/9!。(遞歸法怎么做呢,做到主函數(shù)后面的fo... n!=1×2×3×...×n。階乘亦可以遞歸方式定義:0!=1,n!=(n-1)...
編一個函數(shù)n!。主函數(shù)求5!*7!/9!。(遞歸法怎么做呢,做到主函數(shù)后面的fo...
n!=1×2×3×...×n。階乘亦可以遞歸方式定義:0!=1,n!=(n-1)!×n。資料擴(kuò)展:大于等于1 任何大于等于1 的自然數(shù)n 階乘表示方法:或 0的階乘 0!=1。定義的必要性 由于正整數(shù)的階乘是一種連乘運(yùn)算,而0與任何實(shí)數(shù)相乘的結(jié)果都是0。所以用正整數(shù)階乘的定義是無法推廣或推導(dǎo)出0!=1的。
} 這個函數(shù)首先檢查輸入的整數(shù)n是否為1。如果是,則直接返回1。否則,它將n與sum(n-1)的結(jié)果相加,并返回這個值。這個過程會一直遞歸下去,直到n減少到1。在主函數(shù)中,我們設(shè)置變量i為100,并調(diào)用sum(100)函數(shù)計算1到100的和。
下面我們再舉例說明該過程。設(shè)本程序時輸入為5,即求5!。在主函數(shù)中的調(diào)用語句即為y=ff(5),ff函數(shù)后,由于n=5,不等于0或1,故應(yīng)f=ff(n-1)*n,即f=ff(5-1)*5。該語句對ff作遞歸調(diào)用即ff(4)。
起到的作用是求出N的階乘,然后用遞歸法進(jìn)行加和。最后兩句即是遞歸法的應(yīng)用。比如輸入的是5,那么該函數(shù)線求出m=125,然后由于n=5》1,然后再次調(diào)用F函數(shù),再算3的階乘,直至n=1。自己好好畫個流程圖看看就很明顯了。
本文由夕逆IT于2025-04-06發(fā)表在夕逆IT,如有疑問,請聯(lián)系我們。
本文鏈接:http:///kaifa/876712.html
本文鏈接:http:///kaifa/876712.html