赞
踩
本关任务:编写递归函数,通过递归调用,将一整数逆序输出。
如何用递归思想解决问题?首先要学会对问题的分解 递归思想的核心,实际上一种问题简化的方式。当遇到复杂问题时,分解出稍简单的类似问题,不纠缠于这类问题本身的求解,而是聚焦于能否在这个稍简单类似问题的基础上,通过简单计算解决复杂问题,这就是如何获得递推公式的过程,也是用递归思想解决问题的过程。
对于本关任务,不妨问自己几个问题,不好描述可以举例:
当前问题是什么?——整数12345,逆序输出
比当前问题稍简单的类似问题是什么?——整数1234逆序输出
在解决了这个稍简单的类似问题的基础(即能够输出4321),可以解决原问题吗——先输出5,再完成类似问题
知道最简单的情况的结果吗(终止条件)——1位数的逆序输出,就是输出自身
根据提示,在右侧编辑器补充代码,编写递归函数,通过递归调用,将一整数逆序输出。
注意,本题仅要求该函数能够逆序输出所有数字,并未要求返回逆序数。
平台会对你编写的代码进行测试:
测试输入:1234
预期输出:4321
测试输入:123400
预期输出:004321
开始你的任务吧,祝你成功!
- #include <stdio.h>
- #include <string.h>
-
- int reverse(int n){
- int m;
- if (n==0){
- return 0;
- }
- m=n%10;
- n=n/10;
- printf("%d",m);
- reverse(n);
- }
-
- int main()
- {
- int n;
- scanf("%d",&n);
- int m=reverse(n);
- }
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。