第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

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

疑惑 some questions

為什么這個自定義 的函數(shù)不用調(diào)用就執(zhí)行了以及為什么先從n=9開始

#include <stdio.h>

int getPeachNumber(int n)

{

? ? int num;? ? //定義所剩桃子數(shù)

? ? if(n==10)

? ? {

? ? ? ? return 1;? ? ? //遞歸結束條件

? ? }?

? ? else

? ? {

? ? ? ? num = (getPeachNumber(n+1)+1)*2;? ?//這里是不應該用遞歸呢?

? ? ? ? printf("第%d天所剩桃子%d個\n", n, num); //天數(shù),所剩桃子個數(shù)

? ? }

? ? return num;

}

int main()

{

? ? int num = getPeachNumber(1);

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

? ? return 0;

}


正在回答

2 回答

為什么這個自定義 的函數(shù)不用調(diào)用就執(zhí)行了以及為什么先從n=9開始

#include <stdio.h>

int getPeachNumber(int n)

{

? ? int num;? ? //定義所剩桃子數(shù)

? ? if(n==10)

? ? {

? ? ? ? return 1;? ? ? //遞歸結束條件

? ? }?

? ? else

? ? {

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

?//這里N=1代入,

num=(getPeachNumber(1+1)+1)*2

再調(diào)用getPeachNumber(2)

以此一直調(diào)用到(getPeachNumber(9+1)+1)*2

這時候getPeachNumber(10)=1

所以num=(1+1)*2=4

重點:這時候代碼讀下一行printf("第%d天所剩桃子%d個\n", n, num);

輸出? 第9天所剩桃子4個

這時候跳回我們上一個調(diào)用num=(getPeachNumber(8+1)+1)*2

則num=(4+1)*2=10,再輸出。

以此類推

? ? ? ? printf("第%d天所剩桃子%d個\n", n, num);?

? ? }

? ? return num;

}

int main()

{

? ? int num = getPeachNumber(1);//調(diào)用在這里

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

? ? return 0;

}


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

慕設計0398473 提問者

輸出第九天后,為什么會跳回到上一個調(diào)用
2018-09-14 回復 有任何疑惑可以回復我~
#2

qq_Suke_dgiRW0 回復 慕設計0398473 提問者

因為你每調(diào)用一次getPeachNumber()的時候都會printf("第%d天所剩桃子%d個\n", n, num); 其實你是在計算num的過程中每次調(diào)用都進行了輸出。
2018-09-14 回復 有任何疑惑可以回復我~
#3

慕設計0398473 提問者 回復 qq_Suke_dgiRW0

那n=1輸入時,輸出順序不是應該是第一天、第二天。。。再到第九天嗎
2018-09-15 回復 有任何疑惑可以回復我~
#4

qq_Suke_dgiRW0 回復 慕設計0398473 提問者

N=1雖然是先輸入 但接著我們要執(zhí)行的是自調(diào)用函數(shù) 這時N=2以此類推一直調(diào)用到N=10,跳到這時候getPeachNumber(10)=1,這時候不再調(diào)用,我們計算第九層的NUM,執(zhí)行第九層的Printf。 也就是你輸入N=1但實際輸出的是從第九層的Print開始的。
2018-09-16 回復 有任何疑惑可以回復我~
#5

慕設計0398473 提問者 回復 qq_Suke_dgiRW0

哦 懂了 感謝
2018-09-16 回復 有任何疑惑可以回復我~
#6

墻外行人2203222 回復 慕設計0398473 提問者

懂了嗎,我也有同樣的疑惑
2018-09-21 回復 有任何疑惑可以回復我~
#7

qq_Suke_dgiRW0 回復 墻外行人2203222

你哪里不懂,可以問我。
2018-10-04 回復 有任何疑惑可以回復我~
查看4條回復

輸出第九天后,為什么會跳回到上一個調(diào)用

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

舉報

0/150
提交
取消
C語言入門
  • 參與學習       926904    人
  • 解答問題       21532    個

C語言入門視頻教程,帶你進入編程世界的必修課-C語言

進入課程

疑惑 some questions

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

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號