字符串数组反转输出 以空格为单词分隔符 C++

原创 2015年11月18日 16:51:34

给出字符串数组及其长度,字符串有若干单词和空格组成,下边代码将数组中单词反转输出,输入”Welcom to Hubei
Wuhan”输出为“Wuhan Hubei to Welcom”

代码思路为:
1. 定义两个指针,分别指向一个单词的开头和结尾地址
2. 从字符串数组尾部开始检索单词,以空格为单词结束标志
3. 将两个指针区间的字符输出

#include <iostream>
using namespace std;
void string_inv(char str[], unsigned int len);
int main(){
    char str[] = "Wuhan Hubei to Welcom";
    unsigned int len = 20;
    string_inv(str, len);
    return 0;
}
void string_inv(char str[], unsigned int len){
    char *b = str+len;
    char *e = str+len;
    for (;b != str;b=e)
    {       
        while(*(--e)!=' '&& e != str){          
        }
        //memcpy(tem, e+1, (b -e)/sizeof(char));
        for (char *temp = (str == e)?e:e+1;temp < b+1;temp++)
        {
            cout << *temp ;
        }
        cout << endl;
        if(e-- == str)
            break;
    }

} 

相关文章推荐

[C/C++笔面试]编程实现字符串中各单词的翻转

C/C++笔面试 编程实现字符串中各单词的翻转 编写函数,将“I am from Shanghai”倒置为“Shanghai from am I”,即句子中的单词位置倒置,而不改变单词内部的结构...

C/C++ 按换行输入,空格分割(输入输出相关,sacnf,sstream)

输入输出
  • zmdsjtu
  • zmdsjtu
  • 2017年05月15日 15:05
  • 1117

字符串去空格以及反转操作示例

字符串反转

c++中字符串反转的3种方法

第一种:使用string.h中的strrev函数 #include #include using namespace std; int main() { char s[]="hello...
  • Szu_AKer
  • Szu_AKer
  • 2016年09月03日 11:35
  • 21290

按单词反转字符串

并不是简单的字符串反转,而是按给定字符串里的单词将字符串倒转过来,就是说字符串里面的单词还是保持原来的顺序,这里的每个单词用空格分开。例如: Here is www.zhuxinquan.com 经过...
  • xinpo66
  • xinpo66
  • 2014年03月06日 23:52
  • 7116

acm-字符串去除空格并逆序输出

/* *程序的版权和版本声明部分: *Copyright(c)2013,烟台大学计算机学院学生 *All rights reserved. *文件名称: *作者:田成琳 *完成日期:2013年 11月...

从屏幕输入一行数字,以空格分隔,如何分别存放到数组中

要求: 在屏幕中,输入一行数字,以空格分隔,其中每个数字的长度不一定一样,要求将这些数字分别存放到数组中。 例如:  输入:1  123 1234 22 345  25 5 对应的数组的值应该...

istringstream对象可以绑定一行字符串,然后以空格为分隔符把该行分隔开来。

istringstream对象可以绑定一行字符串,然后以空格为分隔符把该行分隔开来。 #include #include using namespace std; int main() { ...

java 字符串中的每个单词的倒序输出,字符串中以空格分割各个单词,如果碰到数字则跳过

1.测试类 package testcase; import junit.framework.TestCase; import huawei.Demo; public class Demo...

字符串空格的压缩:给定一个字符串,将其中连续出现的空格压缩为1个后,将其中已空格分隔的每个字符串逆序打印出来

#include #include #include /*题目:字符串空格的压缩:给定一个字符串,将其中连续出现的空格压缩为1个后,将其中已空格分隔的每个字符串逆序打印出来。 总体思想是用二...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:字符串数组反转输出 以空格为单词分隔符 C++
举报原因:
原因补充:

(最多只允许输入30个字)