posts - 137,comments - 0,views - 40818
复制代码
#include <iostream>
#include <string>
#include <windows.h>
using namespace std;
int main() {
    string str;
    int i = 0;  //访问字符数组的下标
    int count = 0;

    cout << "请输入一句话:" << endl;
    getline(cin, str);

    while (str[i]) {     //跳过前面的空格
        while (str[i] == ' ') i++;  //该循环结束后,str[i]是下一个单词的第一个字母
        int j = i;
        while (str[j] && str[j] != ' ') j++;  //该循环结束后,str[j]是这个单词后面的下一个位置
        //逆转这个单词
        for (int k1 = i, k2 = j - 1; k1 < k2; k1++, k2--) {
            char tmp = str[k1];
            str[k1] = str[k2];
            str[k2] = tmp;
        }
        i = j;
    }
    for (int k1 = 0, k2 = i - 1; k1 < k2; k1++, k2--) {
        char tmp = str[k1];
        str[k1] = str[k2];
        str[k2] = tmp;
    }
    cout << str << endl;
    system("pause");
    return 0;
}
复制代码

 

posted on   wshidaboss  阅读(93)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具
· Manus的开源复刻OpenManus初探
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示