计算机考研复试 计算字符个数
题目描述
写出一个程序,接受一个由字母和数字组成的字符串,和一个字符,然后输出输入字符串中含有该字符的个数。不区分大小写。
输入描述:
输入一个有字母和数字以及空格组成的字符串,和一个字符。
输出描述:
输出输入字符串中含有该字符的个数。
示例1
输入
ABCDEF A
输出
1
//计算机考研程序设计 计算字符个数 /* 程序设计思想: 注意用getline()读带有空格的字符串,又学到了一个 cin.ignore()、emmm... */ //程序实现: #include<iostream> #include<string> using namespace std; int main(){ string s; while(getline(cin,s)){ char c; cin>>c; int cnt=0; for(int i=0;i<s.size();++i){ if(s[i]==c||s[i]+32==c||s[i]==c+32) //有点坑,现在的测试用例区分大小写了,所以要改下 cnt++; } cout<<cnt<<endl; /*输入字符后有回车符在缓存中意思是回车符也是输入的字符,也被放在缓存中。如果没有消除这个回车符, 会导致getline读取下一个字符串的时候认为到空字符串,所以getline输出0*/ cin.ignore(); //用来清除以回车结束的输入缓冲区的内容,消除上一次输入对下一次输入的影响 } return 0; }