#include <stdio.h>
/* 定义获取单词数量的函数 */
int getWordNumber(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;
}
结果为什么等于55?将10代入(n-1)+n不是等于19么怎么等于55?
天下有奇族人姓计,长生不老。一日其孙问其父:吾之18代祖名何?其父不明,父问其父其父不明,父问其父其父不明,父问其父其父不明,父问其父...晌后,其18代祖回其子:你猜 然其回其子:你猜然其回其子:你猜然其回其子:你猜然其回其子:你猜……终,计姓末代孙知其18代祖名“你猜”此乃,递归
作者:牛杰
链接:http://www.zhihu.com/question/20507130/answer/92131905
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
10带入:getWordName(9)+10=getWordName(8)+9+10=......以此类推
问这个问题说明你没理解递归