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

【养成记】嵌入式挑战第15天,第二周第四讲-递归函数

标签:
C C++ 嵌入式

【养成记】嵌入式挑战第15天,第二周第四讲-递归函数

课程章节

物联网/嵌入式工程师 第二周第四讲 1-18 递归函数

课程内容

对C语言中的递归函数做了介绍

学习笔记

1. 概述

概念:在函数体内,自己调用不断的调用自己,直到某个条件满足才结束调用。
这样的函数我们叫做递归函数。

2. 代码示例

//
// Created by au on 2022/9/19.
//
#include <stdio.h>

int factorial(int num) {

    if (num == 0) {
        return 0;
    } else if (num == 1) {
        return 1;
    }
    return num * factorial(num - 1);
}

/**
 * 要求大家用递归函数写一个5!
解析: 5!指的是求5的阶乘,即求5 * 4 * 3 * 2 * 1的值
要求用递归函数实现。
 * @return
 */
int main() {

    int num = 0;
    printf("请输入想要计算的阶乘数:");
    scanf("%d", &num);

    int ret = factorial(num);

    printf("%d的阶乘为: %d", num, ret);
}

运行结果

请输入想要计算的阶乘数:6
6的阶乘为: 720

请输入想要计算的阶乘数:5
5的阶乘为: 120

3. 代码示例

3.1. 递推和回归

图片描述

3.2. 切饼的代码演示

图片描述

图片描述

课程评价

C语言中的递归函数,很多时候可能会用到,代码很简单,但是写出正确且简练的代码其实很不容易,需要多加练习。

点击查看更多内容
TA 点赞

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

评论

作者其他优质文章

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

100积分直接送

付费专栏免费学

大额优惠券免费领

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

举报

0/150
提交
取消