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

求问这样做错在哪里

#include <stdio.h> 

int getAge(int n){

    int age; //定义第n个人的岁数

    if (n==1){

        return 10;

    }

    else{

        age=getAge(n)+2;

        return age;

    }

}

int main() 

{

    int age=getAge(5);

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

return 0;

}


提问者:娄三飘 2018-12-29 19:50

个回答

  • 米虫懒得聪明
    2019-01-03 16:59:30

    n 少了递推呀,递推函数中应该是 n-1

  • qq_慕田峪8279976
    2018-12-30 14:39:50

    #include <stdio.h> 

    int age(int n)

    {

        int Age;

        if(n==1)

        {

        Age=10;     

        }

        else

        {

            Age=age(n-1)+2;

        }

        return Age;

    }


    int main() 

    {

        int fiveage=age(5);

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

    return 0;

    }