C語言函數(shù)的遞歸和調(diào)用_.docx
《C語言函數(shù)的遞歸和調(diào)用_.docx》由會(huì)員分享,可在線閱讀,更多相關(guān)《C語言函數(shù)的遞歸和調(diào)用_.docx(4頁珍藏版)》請(qǐng)?jiān)趨R文網(wǎng)上搜索。
1、C語言函數(shù)的遞歸和調(diào)用_ C語言中的函數(shù)可以遞歸調(diào)用,即:可以挺直(簡潔遞歸)或間接(間接遞歸)地自己調(diào)自己。 要點(diǎn): 1、C語言函數(shù)可以遞歸調(diào)用。 2、可以通過挺直或間接兩種方式調(diào)用。目前只商量挺直遞歸調(diào)用。 二、遞歸條件 采納遞歸方法來解決問題,必需符合以下三個(gè)條件: 1、可以把要解決的問題轉(zhuǎn)化為一個(gè)新問題,而這個(gè)新的問題的解決方法仍與原來的解決方法相同,只是所處理的對(duì)象有規(guī)律地遞增或遞減。 說明:解決問題的方法相同,調(diào)用函數(shù)的參數(shù)每次不同(有規(guī)律的遞增或遞減),假如沒有規(guī)律也就不能適用遞歸調(diào)用。 2、可以應(yīng)用這個(gè)轉(zhuǎn)化過程使問題得到解決。 說明:用法其他的方法比較麻煩或很難解決,而用法遞歸
2、的方法可以很好地解決問題。 3、必定要有一個(gè)明確的結(jié)束遞歸的條件。 說明:肯定要能夠在適當(dāng)?shù)牡胤浇Y(jié)束遞歸調(diào)用。不然可能導(dǎo)致系統(tǒng)崩潰。 三、遞歸實(shí)例 例:用法遞歸的方法求n! 當(dāng)n1時(shí),求n!的問題可以轉(zhuǎn)化為n*(n-1)!的新問題。 比如n=5: 第一部分:5*4*3*2*1 n*(n-1)! 其次部分:4*3*2*1 (n-1)*(n-2)! 第三部分:3*2*1 (n-2)(n-3)! 第四部分:2*1 (n-3)(n-4)! 第五部分:1 (n-5)! 5-5=0,得到值1,結(jié)束遞歸。 源程序: fac(int n) int t; if(n=1)|(n=0) return 1; else
- 1.請(qǐng)仔細(xì)閱讀文檔,確保文檔完整性,對(duì)于不預(yù)覽、不比對(duì)內(nèi)容而直接下載帶來的問題本站不予受理。
- 2.下載的文檔,不會(huì)出現(xiàn)我們的網(wǎng)址水印。
- 3、該文檔所得收入(下載+內(nèi)容+預(yù)覽)歸上傳者、原創(chuàng)作者;如果您是本文檔原作者,請(qǐng)點(diǎn)此認(rèn)領(lǐng)!既往收益都?xì)w您。
下載文檔到電腦,查找使用更方便
10 積分
下載 | 加入VIP,下載共享資源 |
- 配套講稿:
如PPT文件的首頁顯示word圖標(biāo),表示該P(yáng)PT已包含配套word講稿。雙擊word圖標(biāo)可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設(shè)計(jì)者僅對(duì)作品中獨(dú)創(chuàng)性部分享有著作權(quán)。
- 關(guān) 鍵 詞:
- 語言 函數(shù) 遞歸 調(diào)用