递归入门(六) ---- 字符串翻转

是 test 翻转,输出 tset ,这种思想和回文字符串类似,只是每次不是检测判断是否是一个字符或者是没有字符,

如果满足一个字符或者没有字符,则直接输出。不用翻转。

否则,进行翻转。

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int str_turn(int low, int high, char *p, int length)
{
char temp;
if(length == 1 || length ==0)
return 0;
temp = p[low];
p[low] = p[high];
p[high] = temp;
return str_turn(low+1, high-1, p, length-2);
}
int main()
{
char str[]="test";
str_turn(0, strlen(str)-1, str, strlen(str));
cout << str;
return 0;
}

你可能感兴趣的:(递归入门(六) ---- 字符串翻转)