赞
踩
完成一个递归程序,倒置字符数组。并打印实现过程
递归逻辑为:
当字符长度等于1时,直接返回
否则,调换首尾两个字符,在递归地倒置字符数组的剩下部分
字符数组长度及该数组
在求解过程中,打印字符数组的变化情况。
最后空一行,在程序结尾处打印倒置后该数组的各个元素。
复制
5 abcde
复制
ebcda edcba edcba
- #include<iostream>
- #include<cstring>
- using namespace std;
- string x;
- int n;
- void jh(int a, int b)
- {
- if (a >= b)
- return;
- else
- {
- swap(x[a], x[b]); //交换函数
- cout << x << endl;
- jh(a + 1, b - 1); //返回递归
- }
- }
- int main()
- {
- cin >> n >> x;
- jh(0, x.size() - 1); //后两位是输入的下标
- cout << endl << x;
- return 0;
- }

swap 交换函数
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。