【超详细 | 校招 | 秋招 | 面试】在ACM模式(牛客企业面试)下C++语言的输入和输出方式汇总

平时一直用leetcode的核心代码模式,但是招聘的时候好多企业代码题是用的牛客平台的ACM模式,因此将常见的输入输出总结在这里。以供自己回顾,也给有缘人提供 一个思路。会时常更新的,有空的话。

一、输入

1、数组输入

1.1 输入整数 199501
#include<bits/stdc++.h>//万能头文件,后面不在写这一个了,默认有
using namespace std;

int main(){
    int n;
    cin>>n;//此时n = 199501整数
    
    //下面就可以写自己的核心算法了
    //
    //最后用cout输出答案  
  
    return 0;
}
1.2 输入

2、字符串输入

2.1 输入 hello wang jing yu
2.1.1 方法一:cin+getchar
  • 可以用下面的代码来实现,cin读取的时候遇到空格和回车就停下来结束读取,空格和回车还遗留在缓冲区等待读取,所以用getchar()来清除不需要的空格和回车。
  • 于此同时,在getchar()遇到回车的时候说明这个测试用例已经完成了,你可以进行相应的算法设计。
  • getchar()也可以替换成if(cin.get() == ‘\n’)
int main() {
    string str;
    vector<string> strs;
    while (cin >> str) {
        strs.push_back(str);
        if (getchar() == '\n') {//一个测试用例的结束
            //此时strs = {"hello", " wang", "jing", "yu"};
            //把strs作为实参传入以前核心代码模式的形参当中
            //进行你自己的算法设计
        }
    }
    return 0;
}
2.1.2 方法二:cin+getline
int main()
{
    string s;
    getline(cin, s);//此时s = {"hello wang jing yu"};
    //
    //接下来,可以对s进行算法设计,注意s里面是有空格的
    cout << s.length() - 1 - s.rfind(' ') << endl;
}

二、输出

注意:这里的输出是cout,不是像核心代码模式那样是return

2.1 没想好

阿巴阿巴阿巴阿巴阿巴阿巴

2.2 先把番号建立在这里

阿巴阿巴阿巴阿巴阿巴阿巴

参考资料:

0、官方文档(输入输出流)

点一下这里

1、@道道要加油

点一下又不怕啥的

2、getline()函数用法

瞧瞧

3、rfind详细用法

看看

4、做道题自测一下吧

这就去做

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值