(弟弟14)递归•按顺序打印一个整数的每一位

这里是目录哦

  • 题目
  • 代码
  • 运行截图
  • 递归思路
  • 递归停止条件
  • 如何实现“按顺序”
  • 悟了✨
  • 加油🎉

题目

按顺序打印一个整数的每一位。

代码

#include<stdio.h>
void Print(int n)
{if (n > 9)//递归停止条件{Print(n / 10);//不断趋近递归停止条件}printf("%d ", n % 10);
}
int main()
{int m = 0;scanf("%d", &m);Print(m);return 0;
}

运行截图

在这里插入图片描述

递归思路

以m=198为例:
在这里插入图片描述

递归停止条件

可以发现,if (n > 9)//递归停止条件Print(n / 10);//不断趋近递归停止条件都含有同一个字母n。通过控制那个相同的字母逐渐符合“停止条件”,来控制递归函数的停止。

更多递归练习和理解,可参考(这不是很难的题,你可以懂):
(弟)递归•斐波那契数、n的k次方

如何实现“按顺序”

以m=198为例:
Print函数中的printf("%d ", n % 10);只有被/到只剩一位数的1才能打印。其他的都会因为进入if而进入不断的递归,直到打印了1以后才往回走。所以可以实现按顺序打印。

悟了✨

其实递归不要想得太复杂,只要是不断使用同一个函数,就可以考虑递归,除非有明显的缺陷。所谓的缺陷就是“递归反而会让程序更麻烦”的情况。

一个问题直接求解时不好求解,如果可以将其划分成其子问题,并且子问题和原问题有相同的解法时,就可以使用递归的方式解决。

决定使用递归后,只需要基于你的目的,考虑开头第几个递归函数的执行思路就可以了【给自己举简单的具体例子帮助理解】,因为其余都一样。比如,你要按顺序打印,那就会想到用n % 10,只有当n是个一位数时,才可以打印出n。那就是说,10以及大于10的都不可以打印,即if (n > 9)无法实现目的的就放进递归

递归中一般要用if,因为要写递归停止条件。并且递归函数中最后执行的一定是停止条件情况下的操作。

加油🎉

所有值得做的事,都值得把它做好。
你又向目标迈进了哦!

❤️❤️❤️恭喜! 恭喜! 又收了一名小弟! ❤️❤️❤️

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/621046.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

游戏实践:扫雷

一.游戏介绍 虽然很多人玩过这个游戏&#xff0c;但还是介绍一下。在下面的格子里&#xff0c;埋的有10颗雷&#xff0c;我们通过鼠标点击的方式&#xff0c;点出你认为不是雷的地方&#xff0c;等到把所有没有雷的格子点完之后&#xff0c;及视为游戏胜利。 上面的数字的意思…

python爬虫------- Selenium下篇(二十三天)

&#x1f388;&#x1f388;作者主页&#xff1a; 喔的嘛呀&#x1f388;&#x1f388; &#x1f388;&#x1f388;所属专栏&#xff1a;python爬虫学习&#x1f388;&#x1f388; ✨✨谢谢大家捧场&#xff0c;祝屏幕前的小伙伴们每天都有好运相伴左右&#xff0c;一定要天天…

【爬虫开发】爬虫从0到1全知识md笔记第5篇:Selenium课程概要,selenium的其它使用方法【附代码文档】

爬虫开发从0到1全知识教程完整教程&#xff08;附代码资料&#xff09;主要内容讲述&#xff1a;爬虫课程概要&#xff0c;爬虫基础爬虫概述,,http协议复习。requests模块&#xff0c;requests模块1. requests模块介绍,2. response响应对象,3. requests模块发送请求,4. request…

Python开源工具库使用之词云Wordcloud

文章目录 前言一、基本使用1.1 文本生成词云1.2 配置项 二、进阶用法2.1 自定义形状2.2 自定义着色2.3 自定义词频2.4 中文 三、实际案例3.1 工作报告词云3.2 周杰伦歌词词云 四、总结4.1 优点和局限性4.2 展望未来发展 参考 前言 当我们需要将大量文本数据可视化展示时&#…

【Entity Framework】你要知道EF中功能序列与值转换

【Entity Framework】你要知道EF中功能序列与值转换 文章目录 【Entity Framework】你要知道EF中功能序列与值转换一、序列1.1 基本用法1.2 配置序列设置 二、值转换2.1 配置值转换器2.2 批量配置值转换器2.3 预定义的转换2.4 ValueConverter类2.5 内置转换器 三、应用3.1 简单…

白盒测试详解

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号&#xff1a;互联网杂货铺&#xff0c;回复1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 概念与定义 白盒测试&#xff1a;侧重于系统或部件内部机…

攻防世界1

阅读须知&#xff1a; 探索者安全团队技术文章仅供参考,未经授权请勿利用文章中的技术资料对任何计算机系统进行入侵操作,由于传播、利用本公众号所提供的技术和信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者 本人负责&#xff0c;作者不为此承担任何责任,如…

为了执行SQL语句,MySQL的架构是怎样设计的

1. 把MySQL当个黑盒子一样执行SQL语句 上一讲我们已经说到&#xff0c;我们的系统采用数据库连接池的方式去并发访问数据库&#xff0c;然后数据库自己其实也会维护一个连 接池&#xff0c;其中管理了各种系统跟这台数据库服务器建立的所有连接 我们先看下图回顾一下 当我们的…

苹果备忘录误删一段内容怎么恢复?iPhone备忘录恢复的4种方法!收藏!

在使用苹果设备时&#xff0c;备忘录是许多用户常用的工具之一。iPhone备忘录是一款功能强大、易于使用的应用&#xff0c;它能帮助你更好地管理生活和工作。无论你是记录待办事项、设置提醒还是与他人分享信息&#xff0c;备忘录都能满足你的需求。 然而&#xff0c;如果不小…

Mac下载的软件显示文件已损坏,如何解决文件已损坏问题

当在Mac上下载的软件显示文件已损坏时&#xff0c;这可能是因为多种原因导致的&#xff0c;包括网络问题、下载中断、软件未完整下载、文件传输错误等。解决这个问题需要采取一些步骤来排除可能的原因&#xff0c;并尝试修复文件。下面将详细介绍一些常见的解决方法&#xff1a…

单链表链表专题

1 链表的概念 概念&#xff1a;链表是⼀种物理存储结构上⾮连续、⾮顺序的存储结构&#xff0c;数据元素的逻辑顺序是通过链表中的指针链接次序实现的。 链表的结构跟⽕⻋⻋厢相似&#xff0c;淡季时⻋次的⻋厢会相应减少&#xff0c;旺季时⻋次的⻋厢会额外增加⼏节。只 需要…

Laravel 11入门:使用ServBay打造高效开发环境

Laravel 11发布&#xff0c;改进了不少功能。 它引入了更加流畅的应用结构、每秒限速、健康路由等特性。 此外&#xff0c;Laravel还推出了第一方可扩展的WebSocket服务器Laravel Reverb&#xff0c;为你的应用提供强大的实时功能。 在今天的指南中&#xff0c;我将设置一个…