好像麻煩 沒(méi)什么作用啊!階乘我有for循環(huán)照樣實(shí)現(xiàn)又簡(jiǎn)單!
為巍山等地區(qū)用戶(hù)提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及巍山網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為做網(wǎng)站、成都網(wǎng)站建設(shè)、巍山網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專(zhuān)業(yè)、用心的態(tài)度為用戶(hù)提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶(hù)的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
int f(int n)//實(shí)現(xiàn)階乘參數(shù)
{
int tem = 1;
for(;n0;n--)
{
tem*=n;
}
return tem;
}
我解釋下具體執(zhí)行過(guò)程:
printf("%d!=%ld\n",num,mul(num));
這里調(diào)用了mul(num)方法,第一個(gè)值是5,進(jìn)入方法后,
if(51) x=5*mul(5-1);
這里又調(diào)用了一次方法,
mul(5-1)
這里就是遞歸調(diào)用了,需要把4的值帶入方法又執(zhí)行一次,
變成:if(41) x=4*mul(4-1);
這里又調(diào)用了一次方法,
mul(4-1)
依次類(lèi)推為:if(31) x=3*mul(3-1);
if(21) x=2*mul(2-1);
這里看懂了沒(méi),遞歸函數(shù)關(guān)鍵字在“遞”和“歸”,相當(dāng)于循環(huán),一直到條件不滿(mǎn)足時(shí)在“歸”,一步步return直到第一個(gè)調(diào)用的mul方法。在return主函數(shù)。
也就是從最后一次調(diào)用
mul(2-1)時(shí)
n的值為1了,執(zhí)行else語(yǔ)句,結(jié)束“遞”方法操作,return語(yǔ)句,返回X=1,那么接下來(lái)變?yōu)?/p>
if(21) x=2*1,返回X=2,接下來(lái)變?yōu)椋?/p>
if(31) x=3*2,返回X=6,接下來(lái)變?yōu)椋?/p>
if(41) x=4*6,返回X=24,接下來(lái)變?yōu)椋?/p>
if(51) x=5*24,返回X=120 結(jié)束遞歸調(diào)用。
希望你能看懂,還有問(wèn)題在補(bǔ)充吧!
遞歸函數(shù)通常用來(lái)解決結(jié)構(gòu)自相似的問(wèn)題。所謂結(jié)構(gòu)自相似,是指構(gòu)成原問(wèn)題的子問(wèn)題與原問(wèn)題在結(jié)構(gòu)上相似,可以用類(lèi)似的方法解決。具體地,整個(gè)問(wèn)題的解決,可以分為兩部分:第一部分是一些特殊情況,有直接的解法;第二部分與原問(wèn)題相似,但比原問(wèn)題的規(guī)模小。實(shí)際上,遞歸是把一個(gè)不能或不好解決的大問(wèn)題轉(zhuǎn)化為一個(gè)或幾個(gè)小問(wèn)題,再把這些小問(wèn)題進(jìn)一步分解成更小的問(wèn)題,直至每個(gè)小問(wèn)題都可以直接解決。因此,遞歸有兩個(gè)基本要素:
(1)邊界條件:確定遞歸到何時(shí)終止,也稱(chēng)為遞歸出口。
(2)遞歸模式:大問(wèn)題是如何分解為小問(wèn)題的,也稱(chēng)為遞歸體。遞歸函數(shù)只有具備了這兩個(gè)要素,才能在有限次計(jì)算后得出結(jié)果。
遞歸就是某個(gè)函數(shù)直接或間接地調(diào)用了自身,這種調(diào)用方式叫做遞歸調(diào)用。說(shuō)白了,還是函數(shù)調(diào)用。既然是函數(shù)調(diào)用,那么就有一個(gè)雷打不動(dòng)的原則:所有被調(diào)用的函數(shù)都將創(chuàng)建一個(gè)副本,各自為調(diào)用者服務(wù),而不受其他函數(shù)的影響。
網(wǎng)站名稱(chēng):c語(yǔ)言遞歸函數(shù)的用途 c語(yǔ)言函數(shù)遞歸
網(wǎng)址分享:http://vcdvsql.cn/article40/dosdhho.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供商城網(wǎng)站、外貿(mào)網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)、定制網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容