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

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

這個程序是怎么運行的啊

#include <stdio.h>

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

int getWordNumber(int n)

{ ??

? ? int we;

? ? if(n == 1)

? ? {

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

? ? }

? ? else{

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

? ? ? ? return we ; ? ? ? //到第天會的單詞數量

? ? }

}

int main()

{

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

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

? ? return 0;

}


正在回答

2 回答

? 這里實現的不是累加效果,而是遞推數據的值,這里推出第十天的值

int num = getWordNumber(10);?? 你可以將這個里面的數換成別的數,比如說2??? 3????? 4,你就能發現這里的值并不是累加計算,而是遞推

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

思心等待的人 提問者

非常感謝!
2016-11-16 回復 有任何疑惑可以回復我~
#2

技不如人_甘拜下風

累加和遞推有什么不同嗎?這是用遞推實現累加效果嗎? 不是很明白,試了2,3,4,也都是2+1,3+2+1,4+3+2+1啊?
2016-11-26 回復 有任何疑惑可以回復我~
#3

南枕北傷 回復 技不如人_甘拜下風

用1到10的數來講,累加就是從1加到10,遞推就是知道其中的一個數 推出另一個數
2016-11-30 回復 有任何疑惑可以回復我~
#4

技不如人_甘拜下風 回復 南枕北傷

是不是這是簡單的,我可以推出每個的數值,如果是復雜的話,就是用代數式來表示?
2016-12-01 回復 有任何疑惑可以回復我~
#5

南枕北傷 回復 技不如人_甘拜下風

和你說的差不多,但是不同的地方有不同的用法
2016-12-01 回復 有任何疑惑可以回復我~
查看2條回復

#include<stdio.h>
int getWordNumber(int n)???? //這里用的是遞歸函數
{
??? int we;
??? if(n == 1)
??? {
??????? return 1;??? //這里設置遞歸函數的結束語,即當n=1時返回值為1
??? }
??? else
?{
??????? we=getWordNumber(n-1)+n;? //這里用到遞歸函數????? 從下面參考 getWordNumber中為10,所以要反向推導
??????? return we ;?????? //返回值為? we 計算出來的值
??? }
}
int main()
{
??? int num = getWordNumber(10);???? //獲取會了的單詞數量
??? printf("小明第10天記了:%d個單詞。\n", num);
??? return 0;
}

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

思心等待的人 提問者

這個程序是怎樣實現累加的呢
2016-11-15 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

這個程序是怎么運行的啊

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

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

幫助反饋 APP下載

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

公眾號

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