為什么我這樣從1加到10不行,如果是從1加到10我要怎么設(shè)置終止代碼
? #include<bits/stdc++.h>
using namespace std;
int getWordNumber(int n)
{
? ? int sum;? ? ?//感覺(jué)是我這里限制了getWordNumber函數(shù) 應(yīng)該不能這么使用sum=getWordNumber(n+1)+n;
? ? sum=getWordNumber(n+1)+n;
? ? if(n==10)
? ? ? ? return sum;
? ? else
? ? return getWordNumber(n+1)+n ;
}
int main()
{
? ? int num = getWordNumber(1);
? ? printf("小明第10天記了:%d個(gè)單詞。\n", num);
? ? return 0;
}
2021-01-26
?#include<stdio.h>
//using namespace std;
int getWordNumber(int n)
{
? ? int sum;? ? ?//感覺(jué)是我這里限制了getWordNumber函數(shù) 應(yīng)該不能這么使用sum=getWordNumber(n+1)+n;
? ? if(n==10)
? ? {
? ? ? ? return 10;
? ? }else
? ? {
? ? ? ? ? sum=getWordNumber(n+1)+n;
? ? }
? ? ? ? return sum;
}
int main()
{
? ? int num = getWordNumber(1);
? ? printf("小明第10天記了:%d個(gè)單詞。\n", num);
? ? return 0;
}
你的代碼是先調(diào)用后再用IF判斷是不是終止了,這樣就永遠(yuǎn)不會(huì)終止,要先判斷是否終止再繼續(xù)運(yùn)行。