琉璃星
2015-12-25 09:29
#include <stdio.h>
int getYears(int n)
{ int num;
if(n==5)
{return 10;}
else
{num=(getYears(n+1)+2);
}
return num;
}
int main()
{
int num=getYears(1);
printf("第5个人的年龄是%d岁", num);
return 0;
}
当年你的传值 1到递归函数时,执行4次num=(getYears(n+1)+2);一直到n == 5//这期间每执行一次n都会加1,就是然后这个+2的运算也会执行4次,就是8,当n == 5,返回一个10,所以当递归结束时num = 2+2+2+2+10 就是18
C语言入门
926207 学习 · 20797 问题
相似问题