牛客网输入输出

牛客网做题时需要自己写输入输出,下面分别说明cin和cout怎么用
cin&cout:
cin会以空格、回车或者tab作为输入结束符、间隔符。

  1. 若已知当前有几个数字,直接输入输出即可,例如:
    cin>>a>>b; cout<<a+b<<end;
  2. 若要输入数组,则第一行会肯定的告诉数组的大小,然后循环输入即可。
    cin>>len;
    vector<int> rec(len);
    for(int i=0;i<len;i++)
     cin>>rec[i];    或者是int t = 0;cin>>t;rec.push_back(t);
    </int>
  3. 若是输入字符串有两种方法
    一是同样用vector或者是用char数组存储,不过此时要用动态数组开辟空间,数组长度应该是获得数组的长度+1,因为最后要输入‘\0’。
    char *rec = new char[len+1];
    cin>>rec; //因为输入字符串时,中间不会产生空格
    或者是用sring
    string rec;
    cin>>rec;

敲重点若是要输入带空格的字符串
若是使用string类,则可以直接使用

string str;
getline(cin,str);//即可存储带空格的字符串,会将换行符丢失掉

若对于字符型数组char str[len],可以使用

cin.get(str,len)
cin.getline(str,len)//两种方法实现
//str指的是字符要存入的位置地址,len为要存入的长度
//getline和str的区别getline不保存最后的换行符,而get保存最后的换行符,此时,getline比get获得的长度小1.

4.输出的话直接cout<<要输出的东西<<endl即可。
scanf&printf
scanf也是在遇到空格或者是回车时输入结束。
对于scanf和printf在使用速度上会更快速,还可以格式化输入输出,使用时要加载#include<stdio.h>头文件。
1.使用scanf输入单个或者是已知个数的字符,
int a,b;
scanf("%d%d",&a,&b);即可
2.使用scanf输入数组,也要一直数组的个数,
int len;
scanf("%d",&len);
for(int i=0;i<len;i++)
scanf("%d",&a[i]);即可
3.输入字符串
string str;
scanf("%s",str);
或者是用
char str[len];
scanf("%s",str); //此时不用取地址符,数组名即为地址
注意输入时不能有空格或者回车,如果有的话要循环输入,或者是多次输入。
string str1,str2;
scanf("%s%s",str1,str2);
4.printf直接输出即可,要找到对应的输出格式printf(“%d”,a);即可。
对于字符型printf("c%",a);

全部评论

相关推荐

01-07 15:22
已编辑
门头沟学院 Java
1.排序与选择快排(LC&nbsp;912)数组中第k大的元素(LC&nbsp;215)数组中最小的k个数(LC面试题17.14)2.二分与数学(含概率)sqrt(x)(LC&nbsp;69)pow(x,&nbsp;n)(LC&nbsp;50)搜索旋转数组(LC33)Rand7实现&nbsp;Rand10(LC470)3.双指针与滑动窗口三数之和(LC&nbsp;15)滑动窗口最大值(LC239)有效三角形的个数(LC&nbsp;611)最小覆盖子串(LC&nbsp;76)长度最小子数组(LC&nbsp;209)4.栈与队列/表达式有效的括号(LC&nbsp;20)最长有效括号(LC&nbsp;32)逆波兰表达式求值(LCR&nbsp;036)5.链表反转链表(LC206)反转链表(LC&nbsp;92)k个一组翻转链表(LC&nbsp;25)环形链表/环形链表(LC&nbsp;141/142)删除链表倒数第n个节点(LC19)6.树与图二叉搜索树的最近公共祖先(LC&nbsp;235)二叉树的最大路径和(LC124)路径总和/路径总和(LC112/113)岛屿数量(LC&nbsp;200)课程表(LC210)7.动态规划(序列/路径/计数/区间)最大子数组和(LC&nbsp;53)最长递增子序列LIS(LC300)最小路径和(LC64)加油站(贪心/DP,LC134)最大乘积子数组(LC&nbsp;152)打家劫舍(LC&nbsp;213)不同的子序列(LC&nbsp;115)爬楼梯(LC&nbsp;70)最长公共子序列LCS(LC&nbsp;1143)8.字符串最长回文子串(LC&nbsp;5)最长回文子序列(LC516)字符串解码(LC394)编辑距离(LC&nbsp;72)大数相乘(LC43)9.数组与哈希/前缀后缀除自身以外数组的乘积(LC&nbsp;238)和为k的子数组(LC560)两数之和(LC167)缺失的第一个正数(LC41)合并区间(LC56)10.模拟螺旋矩阵(LC&nbsp;54),二维有序矩阵第k小(LC&nbsp;378)
一人分享一道面试手撕题
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务