反转字符串中的单词

1、问题描述:

网站建设、成都网站设计,成都做网站公司-创新互联已向上千家企业提供了,网站设计,网站制作,网络营销等服务!设计与技术结合,多年网站推广经验,合理的价格为您打造企业品质网站。

例:I am student    ------>结果为:student am I

算法思想:

  先将整个字符串反转一遍,然后在从头开始,遇到空格的在次进行反转,就可以实现反转字符串中的单词了;


2、代码实现

#include
#include
#include


void revStr(char *str, int from, int to);
void finalRev(char *str);

void finalRev(char *str){
    int from = 0;
    int to = 0;

    while(str[to]){
        while(isalpha(str[to])){
            to++;
        }
        revStr(str, from, to-1);
        while(isspace(str[to])){  //针对中间出现多个空格的情况,可以跳跃过去
            to++;
        }
        from = to;
    }
}

void revStr(char *str, int from, int to){
    char tmp;

    while(from < to){
        tmp = str[from];
        str[from++] = str[to];
        str[to--] = tmp;
    }
}

void main(void){
    char str[80];
    char *p = str;
    int strLen;
    int count = 0;
    int i = 0;

    printf("请输入字符串:\n");
    gets(str);
    strLen = strlen(str);
    revStr(str, 0, strLen-1);
    finalRev(str);

    puts(str);    
}

3、结果截图

反转字符串中的单词

算法分析:空间复杂度为:O(1);


本文题目:反转字符串中的单词
本文路径:http://hxwzsj.com/article/pgedde.html

其他资讯

Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 成都定制网站建设 营销型网站建设 重庆网站建设 网站建设 成都响应式网站建设 成都网站建设 成都网站制作 网站设计制作 响应式网站设计 网站建设公司 成都网站设计 定制网站设计 自适应网站建设 企业网站设计 企业网站设计 重庆电商网站建设 阿坝网站设计 成都网站设计 成都商城网站制作 手机网站制作 定制网站制作 高端品牌网站建设