文字列の後方に再帰的に

#include<iostream>
using namespace std;

void reverse(char *s, char *t){//s是当前字符串的头,t是尾
    char c;
    if (s < t){
        c = *s;
        *s = *t;
        *t = c;
        reverse(++s, --t);//每一轮都为更短的掐头去尾的字符串交换头尾数据
    }
}

void main(){
    char str[20]="ABCDEFG";

    //第一次调用,数组str + strlen(str) - 1可计算出数组最后一个元素的指针
    reverse(str, str + strlen(str) - 1);

    cout << "逆序后为:" << str << endl;
}

 

公開された22元の記事 ウォンの賞賛3 ビュー10000 +

おすすめ

転載: blog.csdn.net/floracuu/article/details/104229060