請問為什么到n==1時(shí)返回的值不是1,而是55.
#include <stdio.h>
int getWordNumber(int n)
{
? ?
? ? if(n==1)
? ? {
? ? ? ? return 1;
? ? }? ? else
? ? {
? ? ? return getWordNumber(n-1)+n;
? ? ? ?
? ? }
}
int main()
{
? ? int num = getWordNumber(10);? ? ?//獲取會了的單詞數(shù)量
? ? printf("小明第10天記了:%d個(gè)單詞。\n", num);
? ? return 0;
}
2018-10-07
這是遞歸函數(shù),當(dāng)你輸入10的時(shí)候有:10+9+8+。。。。。+1一直到n==1結(jié)束,n==1相當(dāng)于是一個(gè)遞歸結(jié)束的信號。