| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1303 人关注过本帖
标题:将字符串中单词逆置后输出
只看楼主 加入收藏
xishui777
Rank: 2
等 级:论坛游民
帖 子:53
专家分:94
注 册:2010-8-17
结帖率:100%
收藏
已结贴  问题点数:2 回复次数:2 
将字符串中单词逆置后输出
#include<iostream>
using namespace std;
int main()
{
    //整体翻转
     char a[]="how are you";
     char *p1,*p2;
     p1=p2=a;
     while(*p2!='\0')
     {
       p2++;
     }
     p2--;
     while(p1<=p2)
     {
       char k;
       k=*p1;
       *p1=*p2;
       *p2=k;
       p1++;p2--;
     }
     //单词翻转
          p1=p2=a;
     while(*p2!='\0')
     {
        if(*p2==' ')
          {
            char *p;
            p=p2-1;
            while(p1<=p)
            {
               char m;
               m=*p1;*p1=*p;*p=m;
               p1++;p--;
            }
            p1=p2+1;
          }
          else
          p2++;
     }
         p2--;
        while(p1<=p2)
        {
          char w;
          w=*p1;*p1=*p2;*p2=w;
          p1++;p2--;
        }
     puts(a);
     system("pause");
     return 0;
}
例如:how are you变成you are how
搜索更多相关主题的帖子: 单词 字符 置后 输出 
2010-08-17 16:23
dianzi1987
Rank: 2
等 级:论坛游民
帖 子:5
专家分:24
注 册:2009-9-18
收藏
得分:1 
用strtok比较方便点
2010-08-17 17:09
pangding
Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19Rank: 19
来 自:北京
等 级:贵宾
威 望:94
帖 子:6784
专家分:16751
注 册:2008-12-20
收藏
得分:1 
是这么个翻转法啊!
用 string stream 可能可以干这事。一个词一个词地读到一个 vector 里,然用逆向迭代器输出就行了。
2010-08-18 01:03
快速回复:将字符串中单词逆置后输出
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.018297 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved