最后(10)這里代表什么意思,換了好像也沒有什么區(qū)別
#include <stdio.h>
/* 定義獲取單詞數(shù)量的函數(shù) */
int getWordNumber(int n)
{??
??? if(n == 1)
??? {
??????? return 1;??? //第一天只會(huì)1個(gè)單詞
??? }
??? else{
??????? return n<11?getWordNumber(n-1)+n:getWordNumber(10) ;?????? //到第天會(huì)的單詞數(shù)量
??? }
}
int main()
{
??? int num = getWordNumber(10);???? //獲取會(huì)了的單詞數(shù)量
??? printf("小明第10天記了:%d個(gè)單詞。\n", num);
??? return 0;
}
2016-11-27
我自己的理解是:
換了的確沒有什么區(qū)別 ?C語言的設(shè)計(jì)就是從上到下推 ?但是大多數(shù)情況都是已經(jīng)知道結(jié)果怎樣了 ?然后開始編程 ?所以另外一個(gè)選項(xiàng)無論寫什么 ?你自己心里都清楚 ?他都不會(huì)去實(shí)現(xiàn) ?因?yàn)?0<11 早就知道
寫成getWordNumber(10)這樣 ?我個(gè)人的理解是小明只學(xué)習(xí)10天 ?超過了10天 ?即使n=16啊等等 ?他也只記前10天的單詞內(nèi)容 ?超過10天后 ?他就不學(xué)習(xí)啦
其實(shí)我覺得寫成?return ?getWordNumber(n-1)+n; 就可以了 ?為何要多此一舉呢?