亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

還是看不懂這段的意思。。。。

?num = (getPeachNumber(n+1)+1)*2;?

正在回答

4 回答

讓我們來看看它是如何被調用的吧,

首先理解:int getPeachNumber(n);?? //定義以n為形參的自定義函數

然后理解:getPeachNumber(n+1);?//調用自定義函數,并將n+1的值賦給形參n,即求n=n+1時此函數的返回值

最后理解:num = (getPeachNumber(n+1)+1)*2;???????????????

從n=1開始 因為不等于10所以將1代入上式即:

n==1時執行到num=(getPeachNumber(1+1)+1)*2???????此時()內為2,即開始執行n==2時的遞歸函數

n==2時 執行到num=(getPeachNumber(2+1)+1)*2???? 此時()內為3,即開始執行n==3時的遞歸函數

n==3時 執行到num=(getPeachNumber(3+1)+1)*2??? ?此時()內為4,即開始執行n==4時的遞歸函數

n==4時 執行到num=(getPeachNumber(4+1)+1)*2???? 此時()內為5,即開始執行n==5時的遞歸函數

n==5時 執行到num=(getPeachNumber(5+1)+1)*2???? 此時()內為6,即開始執行n==6時的遞歸函數

n==6時 執行到num=(getPeachNumber(6+1)+1)*2???? 此時()內為7,即開始執行n==7時的遞歸函數

n==7時 執行到num=(getPeachNumber(7+1)+1)*2???? 此時()內為8,即開始執行n==8時的遞歸函數

n==8時 執行到num=(getPeachNumber(8+1)+1)*2???? 此時()內為9,即開始執行n==9時的遞歸函數

n==9時 執行到num=(getPeachNumber(9+1)+1)*2???? 此時()內為10,即開始執行n==10時的遞歸函數

n==10,時,即執行return 1; 結束遞歸并返回值為1,即:getPeachNumber(9+1)=1,因為第10層遞歸結束了,所以要計算每層遞歸函數的返回值,以及后面的語句:printf("第%d天所剩桃子%d個\n", n, num);

?返回結果:

因為運行到n==10時我們得出getPeachNumber(9+1)=1,所以當n==9時就可以算出來了:

n==9時,num=(getPeachNumber(9+1)+1)*2?——>num=(1+1)*2?=4

??????????????? 輸出:第9天所剩桃子4個
n==8時,num=(getPeachNumber(8+1)+1)*2?——>num=(4+1)*2?=10

????????????????輸出:第8天所剩桃子10個
以此類推:

第7天所剩桃子22個
第6天所剩桃子46個
第5天所剩桃子94個
第4天所剩桃子190個
第3天所剩桃子382個
第2天所剩桃子766個
第1天所剩桃子1534個
最后再執行:

printf("猴子第一天摘了:%d個桃子。\n", num);

猴子第一天摘了:1534個桃子。

?

?

13 回復 有任何疑惑可以回復我~
#1

慕仰9056393 提問者

非常感謝!
2016-08-08 回復 有任何疑惑可以回復我~

因為字號的css屬性是可以繼承的,所以給body設置字段就相當于給段落設置字號,不過為了嚴謹些,我們還是完善一下好。setIconEnable(menu,true);

0 回復 有任何疑惑可以回復我~

感謝感謝

0 回復 有任何疑惑可以回復我~

比如第九天 剩4個桃子 第十天 剩一個桃子 第九天的就是getPeachNumber(9),第十天的就是getPeachNumber(10),因為是先吃一半 然后再吃一個 所以第九天的數量就是第十天的先加上先吃掉的那個1 然后再乘以二 遞歸函數調用自身 從10一直到第一天?

2 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

還是看不懂這段的意思。。。。

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號