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

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

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

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

    输入样例:

    Hello World Here I Come

    输出样例:

    Come I Here World Hello


    #include<iostream>
    #include<algorithm>
    #include<vector>
    using namespace std;
    int main(){
        string a;//保存输入的字符串
        string b;//保存每个单词
        getline(cin,a);//因为并没有给定的词数,用getline
        int k=0;//因为要求输出的最后没有多余空格,保存时输出的第几个词
        int i=a.length();
        for(i=i-1;i>=0;i--){//从最后往前数,只要不是空格就保存下来,遇到空格如果是第0个词就直接输出,否则输出个空格在输出词。
        if(a[i]!=' '){
            b+=a[i];
        }
        else  if(k==0){
            std::reverse(b.begin(),b.end());
            cout<<b;
            k++;
            b="";
        }
        else if(a[i]==' '){
            std::reverse(b.begin(),b.end());
            cout<<" "<<b;
            b="";
        }
    }   if(k!=0)cout<<" ";//最后一个词并为输出,因为第一个词前面没有空格,所以要补上
        std::reverse(b.begin(),b.end());
            cout<<b;
    } 
  • 相关阅读:
    牛逼的博客地址
    动画的keyPath
    跳转到系统设置的各种配置
    UITextField只允许输入正数
    冒泡排序
    number类型的数组
    正则表达式
    C中常用的数学函数
    利用运行时,查看一个类的所有子类
    玉蟾宫(悬线法)
  • 原文地址:https://www.cnblogs.com/fromzore/p/9534089.html
Copyright © 2011-2022 走看看