C++ 笔试输入输出问题

牛客网笔试题输入输出问题:

笔试教训

cin>> temp;

cin>>将输入的数据存放到temp里面,并且进行好了类型转换,也就是说如果temp是int,那么输入的数据就会转化成int,如果是strin类型,那么就将输入的数据转换成string类型然后存入到temp里面,cin>>输入的数据不包含空格和回车,空格和回车会存入到cin的缓冲区中,如果想拿到输入的空格和回车,通过cin.get()获得。

#include<stdio.h>
#include<iostream>
#include<vector>
#include<queue>
#include<string.h>
#include<math.h>
#include<unordered_map>
#include<algorithm>
#include<deque>
#include<set>
#include<stack>

using namespace std;


int main()
{
    // getline()输入连续的一串字符串,要求输出的字符串包含空格,遇到回车结束
    string ss;
    getline(cin, ss);
    cout<<ss;
    
    // 输入不定量的整数,以空格隔开,回车结束
    vector<int> a;
    int temp;
    cin>>temp;
    a.push_back(temp);
    while(cin.get() != '\n') {
        cin>>temp;
        a.push_back(temp);
    }
    for(int i=0; i<a.size(); i++)
        cout<<a[i]<<endl;
    
    // 输入不定量个数的多个字符串,每个字符串空格隔开,回车结束
    vector<string> s;
    string tmp;
    cin>>tmp;
    s.push_back(tmp);
    while(cin.get() != '\n') {
        cin>>tmp;
        s.push_back(tmp);
    }
    for(int i=0; i<s.size(); i++)
        cout<<s[i]<<endl;
    
    return 0;
}
//对于string类型的输入,包括空格也输入到string里面
getline(cin, string);

//对于char类型的数据,包含空格也输入到char里面,回车符不会保留在输入在序列里
char temp[10];
cin.get(temp, 9);//第二个参数是要保留的输入字符的数量+1,9的话就是只能保留8个字符

//跟cin.get()用法一样,只是回车符不会保留在输入序列里
cin.getline(temp, 9);


 

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值