#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;}對于上面的代碼表示不懂,特別是result getWordNumber(n-1)+n;不明白應如何執行
2 回答
已采納

luofuxiang
TA貢獻34條經驗 獲得超34個贊
return?getWordNumber(n-1)+n;????//返回第n-1天時學會了的單詞數和第n天學的單詞數之和 ??????????????????//就是把求n天記了的單詞數轉化為求n-1天記了的單詞數加上第n填記的單詞數

weibo_萌令奇奇_0
TA貢獻2條經驗 獲得超2個贊
n表示第n天學會的單詞數量,getWordNumber(n-1)表示前面 n-1 天學會的單詞數量,?getWordNumber(n-1)+n 表示到第n天學會的單詞總數量。這是一個比較簡單的遞歸函數,可以在程序中,多傳幾個不同參數,去理解一下,一起加油哈!
- 2 回答
- 0 關注
- 1456 瀏覽
添加回答
舉報
0/150
提交
取消