何小志
2017-02-04 21:11
return getWordNumber(n-1)+n为什么不会变成负数继续调用呢
有结束语句,最后括号里为某个数,return出一个值。
int getWordNumber(int n) { if(n == 1) { return 1; //第一天只会1个单词 } else{ return getWordNumber(n-1)+n ; //到第n天会的单词数量 } }
举例:
getWordNumber(3)
= getWordNumber(2) + 3
= getWordNumber(1) + 2 + 3
= 1 + 2 + 3 = 6
当n=1时,函数有明确定义的返回值,即n=1是函数递归的出口。
C语言入门
926026 学习 · 20793 问题
相似问题