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

【金秋打卡】第十五天c++

标签:
C++

课程名称:趣味c++入门

章节名称:第七章 函数是什么

讲师姓名:Redknot

内容概述:函数的递归调用:

  1. 递归的终止条件是什么? 

必须设计好这一点,否则就会直接爆栈

2.递归被分解后最基本操作是什么?

递归非常适合层级调用关系,每一层都执行相同的操作,这个要素,就是要提取出递归最核心的要素。

3.递归调用传递的参数

参数列表,返回值。参数列表表示给下一层调用需要传递什么,返回值表示上一层调用需要返回什么。

例如需要一个n!

一般我们会写这样子:

#include<stdio.h>

int main()

{

    int i,n,a=1;

    printf("请输入一个数:");

    scanf("%d",&n);

    for(i=1;i<=n;i++)

        a*=i;

    printf("n!=%d",a);

    return 0;

}

如果用递归:

#include<stdio.h>

int fact(int n)

{

    if(n==1)

    {

        return 1;

    }

    else

    {

        return n*fact(n-1);

     }

}

int main()

{

        int x=5;

        int res=fact(x);

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

        return 0;

}

利用递归的特性,可以很简单得处理一些循环特别复杂的问题,例如:遍历文件夹,遍历二叉树等。

学习心得:学习了函数的递归调用

学习截图:https://img1.sycdn.imooc.com/636904c80001f8e519201080.jpg

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消