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

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

getWordNumber(n-1)+n ; 求解

#include <stdio.h>

/* 定義獲取單詞數量的函數 */

int getWordNumber(int n)

{ ??

? ? if(n == 1)

? ? {

? ? ? ? return 1; ? ?//第一天只會1個單詞

? ? }

? ? else{

? ? ? ? return getWordNumber(n-1)+n ; ? ? ? //到第天會的單詞數量---這里不明白為什么,求解??

? ? }

}

int main()

{

? ? int num = getWordNumber(10); ? ? //獲取會了的單詞數量

? ? printf("小明第10天記了:%d個單詞。\n", num);

? ? return 0;

}


正在回答

5 回答

多謝一樓的回答,稍微解釋一下,

你把10代進去,會得到

getWordNumber(10)=getWordNumber(10-1)+10=getWordNumber(9)+10,這時候

n就變成9了,根據遞歸函數,再把9代進去,得到

getWordNumber(9)+10=getWordNumber(9-1)+9+10=getWordNumber(8)+10+9,

依次類推,最后是

getWordNumber(1)=1+2+3+4+5+6+7+8+9+10=55


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

#include <stdio.h>

/* 定義獲取單詞數量的函數 */

int getWordNumber(int n)

{ ??

? ? if(n == 1)

? ? {

? ? ? ? return 1; ? ?//第一天只會1個單詞

? ? }

? ? else{

? ? ? ? int a;(重新定義一個量a

? ? ? ? a=getWordNumber(n-1)+n;

? ? ? ? return a ; ? ? ? //到第天會的單詞數量(這里把a取得值返回給getwordnumber()函數,這下懂了吧)

? ? }

}

int main()

{

? ? int num = getWordNumber(10); ? ? //獲取會了的單詞數量

? ? printf("小明第10天記了:%d個單詞。\n", num);

? ? return 0;

}


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

#include <stdio.h>

/* 定義獲取單詞數量的函數 */

int getWordNumber(int n)

{ ??

? ? int xx;

? ? if(n == 1)

? ? {

? ? ? ? return 1; ? ?//第一天只會1個單詞

? ? }

? ? else{

? ? ? ? printf("%d\t",n);

? ? ? ? xx=getWordNumber(n-1)+n;?

? ? ? ? printf ("\n%d\t",xx);//到第天會的單詞數量

? ? }

? ? return xx;

}

int main()

{

? ? int num = getWordNumber(10); ? ? //獲取會了的單詞數量

? ? printf("小明第10天記了:%d個單詞。\n", num);

? ? return 0;

}


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

getWordNumber(10)=getWordNumber(10-1)+10=getWordNumber(9)+10

getWordNumber(9)=getWordNumber(9-1)+9=getWordNumber(8)+9

getWordNumber(8)=getWordNumber(8-1)+8=getWordNumber(7)+8

getWordNumber(8)=getWordNumber(7-1)+7=getWordNumber(6)+7

getWordNumber(7)=getWordNumber(6-1)+6=getWordNumber(5)+6

getWordNumber(6)=getWordNumber(5-1)+5=getWordNumber(4)+5

getWordNumber(5)=getWordNumber(4-1)+4=getWordNumber(3)+4

getWordNumber(4)=getWordNumber(3-1)+3=getWordNumber(2)+3

getWordNumber(3)=getWordNumber(2-1)+2=getWordNumber(1)+2

getWordNumber(1)=1


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

我改名字了

從下網上看。
2016-08-15 回復 有任何疑惑可以回復我~

getWordNumber(n-1) 是指前幾天會的單詞數量總和,n是第n天會的單詞數量,兩者相加就是到第n天所學會的單詞數量總和

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

舉報

0/150
提交
取消

getWordNumber(n-1)+n ; 求解

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

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

幫助反饋 APP下載

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

公眾號

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