zoukankan      html  css  js  c++  java
  • 1009 说反话

    给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

    输入格式:

    测试输入包含一个测试用例,在一行内给出总长度不超过 80 的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用 1 个空格分开,输入保证句子末尾没有多余的空格。

    输出格式:

    每个测试用例的输出占一行,输出倒序后的句子。

    输入样例:

    Hello World Here I Come
    

    输出样例:

    Come I Here World Hello
     1 #include<iostream>
     2 #include<vector>
     3 #include<string>
     4 
     5 using namespace std;
     6 
     7 int main() {
     8     vector<string> v;
     9     string str;
    10     getline(cin, str);  //getline 是 string头文件里的成员函数,所以必须加上#include<string>
    11     string tmp = "";
    12     for (int i = 0; i < str.length(); i++) {
    13         if (str[i] == '
    ') {
    14             break;
    15         }
    16         else if (str[i] != ' ') {
    17             tmp += str[i]; //字符串还能这么用。。。
    18         }
    19         else {  //遇到空的位置,说明这个字符串读完了,用这种方法把长的字符串,分割成小的单独的字符串。
    20             v.push_back(tmp); //把tmp里的字符串放到容器的最后
    21             tmp = "";  //把tmp置空
    22         }
    23     }
    24     v.push_back(tmp); //因为当读取到最后一个字符串的时候,因为没有空格,
    25                   //所以不会执行else里内容,需要手动把最后一个字符串push_back
    26     
    27     /*
    28     vector容器里是以字符串为一个一个的单位存取的。所以vector.size()得到的是vector
    29     里面放的字符串的个数  比如:Hello World Here I Come 就是5
    30     */
    31 
    32     for (int i = v.size() - 1; i >= 0; i--) {  //vector类里面好像不包含length这个函数,在C++里面size和length功能一样
    33         if (i != 0) {
    34             cout << v[i] << " ";
    35         }
    36         else {
    37             cout << v[i];  //最后一个字符串后面不能有空格
    38         }
    39     }        
    40     return 0;
    41 }
  • 相关阅读:
    poj 3617 Best Cow Line
    POJ 1852 Ants
    Pairs
    codility MinAbsSum
    Codeforces Beta Round #67 (Div. 2)C. Modified GCD
    timus 1018. Binary Apple Tree
    C
    HDU 1299Diophantus of Alexandria
    BZOJ2155(?) R集合 (卡特兰数)
    CSP模拟赛 number (二分+数位DP)
  • 原文地址:https://www.cnblogs.com/oaoa/p/10658662.html
Copyright © 2011-2022 走看看