为了账号安全,请及时绑定邮箱和手机立即绑定
首页 手记 【养成记】嵌入式挑战第15天,第二周第四讲-递归函数

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

2022.09.19 23:51 28浏览

【养成记】嵌入式挑战第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语言中的递归函数,很多时候可能会用到,代码很简单,但是写出正确且简练的代码其实很不容易,需要多加练习。

点击查看更多内容
0人点赞

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

评论

作者其他优质文章

正在加载中
手记
粉丝
5
获赞与收藏
38

关注TA,一起探索更多经验知识

同主题相似文章浏览排行榜

风间影月说签约讲师

50篇手记,涉及Java、MySQL、Redis、Spring等方向

进入讨论

Tony Bai 说签约讲师

145篇手记,涉及Go、C、Java、Python等方向

进入讨论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消