課程
/后端開發(fā)
/C
/C語言入門
為什么是(sum-1)+2呢???
2017-05-26
源自:C語言入門 5-9
正在回答
要看具體程序的,如程序:有5個人坐在一起,問第5個人多少歲?他說比第4個人大2歲。問第4個人歲數(shù),他說比第3個人大2歲。問第3個人,又說比第2人大兩歲。問第2個人,說比第1個人大兩歲。最后 問第1個人,他說是10歲。請問第5個人多大?函數(shù)如下
int?getAge(int?peopleNum){ int?age; if?(peopleNum==1) { return?10; }? else { age=getAge(peopleNum-1)+2; printf("第%d個人%d歲!\n",peopleNum,age); } return?age; }
age=getAge(peopleNum-1)+2 這條語句就是核心關(guān)系式第n個人比第n-1個人大2歲;else上面的if部分就是限制了遞歸的結(jié)束條件,也很好理解最少要有1個人,遞歸就是有1個初始值(及最小值 或最大值)我按照條件可以求出N個值,可以和循環(huán)參照理解,
慕數(shù)據(jù)3235568 提問者
舉報
C語言入門視頻教程,帶你進(jìn)入編程世界的必修課-C語言
1 回答遞歸的條件
1 回答遞歸結(jié)束的條件
1 回答遞歸條件的書寫
1 回答遞歸結(jié)束條件
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2017-05-31
要看具體程序的,如程序:有5個人坐在一起,問第5個人多少歲?他說比第4個人大2歲。問第4個人歲數(shù),他說比第3個人大2歲。問第3個人,又說比第2人大兩歲。問第2個人,說比第1個人大兩歲。最后 問第1個人,他說是10歲。請問第5個人多大?函數(shù)如下
age=getAge(peopleNum-1)+2 這條語句就是核心關(guān)系式第n個人比第n-1個人大2歲;else上面的if部分就是限制了遞歸的結(jié)束條件,也很好理解最少要有1個人,遞歸就是有1個初始值(及最小值 或最大值)我按照條件可以求出N個值,可以和循環(huán)參照理解,