qq_35734025
Yanir7
2019-09-06 14:47
采纳率: 57.1%
浏览 241

PAT1009题:为什么不能用getline函数。。。

1009 说反话 (20 分)
给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。

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

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

输入样例:
Hello World Here I Come
输出样例:
Come I Here World Hello

#include <cstdio>
#include <cstring>
#include <iostream>
const int MAXSIZE=90;

int main(){
    char ans[MAXSIZE][MAXSIZE];
    char str[MAXSIZE];
    int len;
    int row=0,col=0;
//    fgets(str,MAXSIZE,stdin);
    std::cin.getline(str,MAXSIZE);
    len=strlen(str);
    for(int i=0;i<len-1;++i){
        if(str[i]!=' '){
            ans[row][col++]=str[i];
        }else{
            row++;
            col=0;
        }
    }

    for(int i=row;i>=0;--i){
        printf("%s",ans[i]);
        if(i>0) printf(" ");
    }



    return 0;
}


  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • qtchen_1988
    qtchen_1988 2019-09-06 18:25
    已采纳

    不是不能用,你用的方法不对

        string str;
        std::getline(cin,str);
    
    点赞 评论

相关推荐