为了账号安全,请及时绑定邮箱和手机立即绑定

谁能帮我说一下执行顺序

#include <stdio.h> 

int digui(int n)

{

    int ni,sum;

    if(n==1)

        ni=10;


    else

    ni=digui(n-1)+2;(这个是怎得出结果的?比如函数是:5,5-1+2=6(就算加上10也是16))

printf("%d\n",n);

printf("%d\n",ni);

    return ni;

    printf("%d\n",n);

    

}

int main() 

{

   int sum=digui(5);

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

return 0;

}

正在回答

1 回答

递归就是一个函数在它的函数体内调用它自身,比如你输入digui(5)的时候,判断n是5不是1,于是年龄数+2,这个时候就是2,与此同时开始运算递归digui(4),发现n仍然不等于1,于是年龄数又+2,这时候是4了...直到最后加上最后一人的10岁,总共是18...我也是初学者表达能力不好见谅哈

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
C语言入门
  • 参与学习       926210    人
  • 解答问题       20797    个

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

进入课程

谁能帮我说一下执行顺序

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信