问答详情
源自:5-9 递归函数练习

为什么else后面加了括号之后值就变了

#include <stdio.h> 

/* 

 * 请使用递归函数完成本题

 * 小编已将正确代码放在左侧任务的“不知道怎么办”里

 * 小编希望各位童鞋独立完成哦~

 */

int getAge(int num)

{

    int age;

    if(num==1)

    {

      age=10;

    }

    else

    {

        age=getAge(num-1)+2;

        return age;

    }

}


int main() 

{

printf("第5个人的年龄是%d岁",getAge(5)); 

return 0;

}


提问者:qq_Summer念_0 2019-03-23 16:56

个回答

  • 慕勒0556290
    2019-03-23 23:57:31

    函数需要一个返回值,你的第一个if语句没有返回值,你可以在age=10;后面加一句 return age;结果就正常了。