百练6255-单词反转-2016正式B题

百练

 / 

2016计算机学科夏令营上机考试

 已经结束
 

B:单词翻转

总时间限制: 
1000ms
 
内存限制: 
65536kB
描述

输入一个句子(一行),将句子中的每一个单词翻转后输出。

输入
只有一行,为一个字符串,不超过500个字符。单词之间以空格隔开。
输出
翻转每一个单词后的字符串,单词之间的空格需与原文一致。
样例输入
hello world
样例输出
olleh dlrow

 

 1 #include <iostream>
 2 #include <stdio.h>
 3 #include <string>
 4 #include <ctype.h>
 5 
 6 using namespace std;
 7 
 8 int main()  {
 9     char aaa[501];
10     gets(aaa);
11     string bbb = aaa;
12     int a = 0, b = 0;
13     for(int i = 0; i < bbb.size(); i++) {
14         if(bbb[i] == ' ' )   {
15             b = i-1;
16             //cout << "a "<<a<<" b " << b<<" "<<endl;
17             for(int j = b; j >= a; j--) cout << bbb[j];
18             cout << " ";
19             a = i + 1;
20             //cout << "a "<<a<<" b " << b<<" "<<endl;
21 
22         }
23         else if(i == bbb.size()-1)    {
24             //cout << "fnsjkdfn" << endl;
25 
26             for(int j = i; j >= a; j--) cout << bbb[j];
27         }
28         //cout << " i " << i << " " << endl;
29 
30     }
31     return 0;
32 
33 }

提交网址:http://ica.openjudge.cn/function2/1/

要看清楚是每个单词反转,不是整个句子反转

posted on 2017-06-12 12:37  Oliver-cs  阅读(315)  评论(0编辑  收藏  举报

导航