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

来源:5-9 递归函数练习

qq_Summer念_0

2019-03-23 16:56

#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;

}


写回答 关注

1回答

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

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

C语言入门

C语言入门视频教程,带你进入编程世界的必修课-C语言

926207 学习 · 20797 问题

查看课程

相似问题