#include <iostream> using namespace std; int main() { int time = 0; char ch; string s; //cin>>s; //cin>>noskipws>>ch; //cin>>ch; getline(cin,s);//注意此处不能直接cin,如果这里直接用cin读取字符串的话,缓冲区会剩余一个换行符 cin.get(ch);//而且ch有可能会输入空格所以这一行不能用cin直接输入ch因为,否则会直接跳过空格,无法识别输入 //而要用cin.get(ch)而此时如果11行直接用了cin的话缓冲区会剩下一个换行符12行的输入识别到了换行符时直接导致ch输入结束,导致结果为0; if(ch==' ') { return 0; } else { for(int i=0;i<s.size();i++) { if(ch>64) { if(ch==s[i]|| ch+32==s[i] || ch-32==s[i])// { time++; } } else if(ch==s[i]) { time++; } } } cout<<time; }