国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C++ > 正文

C++ 函數(shù)的遞歸調(diào)用

2019-11-11 06:02:35
字體:
供稿:網(wǎng)友

在調(diào)用一個函數(shù)的過程中又出現(xiàn)直接或間接地調(diào)用該函數(shù)本身,稱為函數(shù)的遞歸(recursive)調(diào)用。包含遞歸調(diào)用的函數(shù)稱為遞歸函數(shù)。 比如:

int test(int x){ int y; y = test(x); return(2*y);}

以上是一個直接調(diào)用的例子,遞歸調(diào)用還包括間接調(diào)用,比如:

int first(int x){ int b; b = second(x); return(2*b);}int second(int y){ int a; a = first(y); return(2*a);}

從上面的程序可以看到,這樣執(zhí)行后會出現(xiàn)無終止的自身調(diào)用,所以程序應(yīng)該加入對用的判斷機(jī)制,讓遞歸在有限次數(shù)后停止。

舉個栗子: 用遞歸的方式求n!

#include <iostream>using namespace std;long fac(int);int main(){ int n; long y; cout <<"請輸入"; cin >>n; y = fac(n); cout<<n<<"!="<<y<<endl; getchar(); getchar(); return 0 ;}long fac(int n){ long f; if (n <0) { cout<<"錯誤?。?!"<<endl; } else if(n== 0||n == 1) f =1; else f=fac(n-1)*n; return f;}

這里寫圖片描述

遞歸退出的條件:

else if(n== 0||n == 1) f =1;

如果n等于0或者等于1,那么執(zhí)行f等于1,不在調(diào)用fac函數(shù),退出了遞歸。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 余庆县| 鄂伦春自治旗| 开封市| 永寿县| 将乐县| 晋江市| 广灵县| 威海市| 衡阳市| 慈溪市| 绥棱县| 丹江口市| 德昌县| 临洮县| 临沧市| 鲁山县| 定南县| 申扎县| 博乐市| 鹿泉市| 昌江| 洛南县| 永安市| 津南区| 遂溪县| 东丰县| 瑞丽市| 石城县| 温泉县| 常山县| 田阳县| 晋城| 靖西县| 新竹市| 承德县| 都昌县| 浠水县| 公安县| 荣昌县| 民丰县| 竹山县|