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

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

大佬們,我想知道這個代碼的運算過程

#include <stdio.h>

int getPeachNumber(n)

{

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

? ? if(n==10)

? ? {

? ? ? ?return 1; ? ? ? //遞歸結(jié)束條件

? ? }?

? ? else

? ? {

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

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

? ? }

? ? return num;

}

int main()

{

? ? int num = getPeachNumber(1);

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

? ? return 0;

}


正在回答

1 回答

其實就是一道應(yīng)用題,每天的桃子是后一天剩下桃子量的兩倍還多一個,所以要想直到當天桃子量必須先知道后一天的桃子量 這也是為什么這個代碼是倒著算的?

并且已知到第十天的時候只剩一個桃子 所以只有算到第十天的時候才能開始解


在算到最后一步,也就是第十天的時候,之前每一天的桃子量都不知道,而是把計算下一天桃子量的函數(shù)當作前一個函數(shù)的變量

我們從頭開始

第一天的桃子量是第二天剩下桃子還多一個的兩倍 此時n=1

即第一天的桃子量num={[第二天的桃子量getPeachnumber(n+1=2)]+1(多一個)}*2 的兩倍

然后對于第二天 來說 此時 n=2 num={[第三天的桃子量getPeachnumber(n+1=3)]+1(多一個)}*2 的兩倍

在第十層之前每層都是這樣循環(huán)的 但是在算到第十層之前都沒有確切的數(shù)字出來

也就是算第九天的桃子量時 n=9 num={[第十天的桃子量getPeachnumber(n+1=10)]+1(多一個)}*2 的兩倍

由n==10, return 1可知 對于函數(shù)getPeachnumber(n)當自變量等于10時 函數(shù)值等于1,即第十條桃子量為1

然后第九天就是num={[1]+1}*2=4

第八條是num={[4]+1}*2=10……以此類推 就出結(jié)果了

你可以想象成俄羅斯套娃?

不知道有沒有幫到你更好的理解


1 回復(fù) 有任何疑惑可以回復(fù)我~
#1

qq_Adolph_CGHNR4

厲害厲害 終于在你這get到了我不理解的點
2020-04-24 回復(fù) 有任何疑惑可以回復(fù)我~
#2

撒野4971754

n=1是天數(shù)嗎?
2020-11-12 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

大佬們,我想知道這個代碼的運算過程

我要回答 關(guān)注問題
微信客服

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

幫助反饋 APP下載

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

公眾號

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