運(yùn)行結(jié)果出來的時候,會多出現(xiàn)一組數(shù)據(jù) 這是為什么?
#include <stdio.h>
int age(int n)
{
int i;
if(n==1)
return 10;
else
{
i=age(n-1)+2;
printf("第%d個人的歲數(shù)為%d。\n",n,i);//提問:為什么輸出的時候會重復(fù)??
? ?return i;
}
}
main()
{
int i=age(5);
printf("第五個人的歲數(shù)為%d歲。",age(5));
return 0;
}
2015-06-09
int i=age(5);
printf("第五個人的歲數(shù)為%d歲。",age(5));
return 0;
因?yàn)楫?dāng)int i = age(5) 的時候,在age遞歸方法里面輸出了一次。但是在printf("第五個人的歲數(shù)為%d歲。",age(5));里面age(5)又輸出了一次。所以重復(fù)輸出了。你要是想只一次的話,可以把int i = age(5)去掉,或者printf("第五個人的歲數(shù)為%d歲。",age(5));改成printf("第五個人的歲數(shù)為%d歲。",i);
2015-06-09
獎建議】建議內(nèi)容