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

为什么if下面加了{ }就不对了,求大侠

#include <stdio.h> 
/* 
 * 请使用递归函数完成本题
 * 小编已将正确代码放在左侧任务的“不知道怎么办”里
 * 小编希望各位童鞋独立完成哦~
 */
int age(n)
{
    int num;
    if(n==1)
    {
        num = 10;
    }
    else
    {
        num = age(n-1) + 2;
        return num;
    }
}
int main() 
{
    int Age = age(5);
 printf("第5个人的年龄是%d岁", Age); 
 return 0;
}


提问者:qq_Caesar_uAFJU3 2018-10-01 11:30

个回答

  • XiaoPi2
    2018-10-08 08:30:55

    return 10应该放在if(n==1)里边,因为是在n==1时才输出

  • 啊哒哒哒哒哒哒
    2018-10-05 20:29:44

    https://img4.mukewang.com/5bb7591d0001820209240800.jpg

    加上int

  • 剧中人丶
    2018-10-01 16:08:27

    else 里面的返回值 return 应该放在 else 外面,至于 if 后面是单语句加不加 {} 都一样,复合语句就必须带 {} ,编程要严谨,加上花括号有助于代码的可读性,养成良好的编程习惯有利于将来开发项目.