有疑問請解答一下,謝謝
#include <stdio.h>?
int getYearOld(int n)
{
??? int year;
??? if(n==1)
??????? return year=10;
??? else
??????? return year=getYearOld(n-1)+2;
??????? printf("第%d個人的年齡是%d歲",n,year);
}
int main()
{
??? int old=getYearOld(5);
?printf("第5個人的年齡是%d歲", old);
?return 0;
}
代碼中的加粗字體為何運(yùn)行不出來?我的運(yùn)行結(jié)果只有第五個人的年齡是18歲。
2020-02-27
因為你在if else后面都寫上了return;
當(dāng)出現(xiàn)return時,即為結(jié)束,不繼續(xù)運(yùn)行下面的代碼,所以printf沒有運(yùn)行;
建議改為在printf后面寫return year;