文章目录
一:cin读入:
cin读入的时候非常方便,不在乎输入的空格和行数:
1.例题:
2.代码实现:
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin >> n;
for(int k=0;k<n;k++)
{
string s;
//getline (cin ,s);
cin >>s;
int h=0;
char a;
for(int i=0;i<s.size();i++)
{
int j=i;
while(j<s.size()&&s[j]==s[i])j++;
if(j-i>h)
{
h=j-i;
a=s[i];
}
i=j-1;
}
cout << a << " " << h << endl;
}
return 0;
}
cin读的时候自动过滤了空格和换行符
一:getline读:
1.getline报错原因:
cin只是在缓存区中,把字符读走,会把\n剩余在缓存区中。
但是getline对\n 非常敏感,就是说getline对于换行非常敏感,导致getline刚开始读入遇到\n时候便停止了读入数据。
2.getline读一行是否可以?
我们再来试试 一行的情况下能否读入以验证我们的猜想。
读入一行是没有问题的
1.加入空格试试
再加一点空格试试
没有问题的!即使有空格也会继续往后面读,这个题是找出出现最多的字符。
2.换行试试
我们再试试能不能换个行,但是还是输入一行:
换行没事的,因为只要求读入的是第一行。