C语言习题:递归实现依次打印出数字,你学会了吗?
2022-04-29 16:30 作者:C语言编程__Plus | 我要投稿
今天来分析一道非常经典的递归题目:实现依次打印出数字中的每一位

代码如下:
结果如下:

运行顺序
谈到递归的时候,最重要的就是要弄明白它究竟是怎么运行的
下面的方法非常直观的表示了它的运算顺序
这里我用粘贴代码块的方式来展示
刚开始执行的是scanf输入,这里不再赘述
这一块是我们递归的主体
看起来可能有点乱,在这基础上加上一些箭头就会清晰了

起初我的想法是,在进行if判断之后,会先执行下面的printf,即先打印最后一位数8,再向前打印
实际上,if语句后的Print函数的嵌套调用是在下一行printf之前的、
也就是说它需要像图中这样完全调用完,直到if判断为假后,才会从后往前运行printf语句
这才有了最开始我贴的结果
程序依次打印了每一位的数字

如果这篇博客对你有帮助,还请点赞收藏支持一下!万分感谢!
-----------------------------------
写在最后:另外,对于准备学习C/C++编程的小伙伴,如果你想更好的提升你的编程核心能力(内功)不妨从现在开始!
微信公众号:C语言编程学习基地
整理分享(多年学习的源码、项目实战视频、项目笔记,基础入门教程)
欢迎转行和学习编程的伙伴,利用更多的资料学习成长比自己琢磨更快哦!
编程学习书籍分享:

粉丝编程交流:
