#include <iostream>
#include<string>
using namespace std;
int main() {
string str;
string str2;
char a;
getline(cin, str);
getline(cin, str2);
a = str2[0];
if (a >= 'A' && a <= 'X') {
a = a + 32;
}
int num = 0;
for (int i = 0; i < str.size(); i++) {
if (str[i] >= 'A' && str[i] <= 'X') {
str[i] = str[i] + 32;
}
if (str[i] == a) {
num++;
}
}
cout << num << endl;
}
这题的主要问题还是不分大小写进行判断的问题,对所有输入先判断是否为大写英文字符,然后将大写的英文利用ASCII码的差值(+32)转化为小写的英文字符,再做等值判断

京公网安备 11010502036488号