题目描述
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字母,然后输出输入字符串中该字母的出现次数。不区分大小写。
题目只问了字母的个数,比较简单,for循环遍历计数
考虑大小写问题就行
#include<iostream> #include<unordered_map> using namespace std; int main(){ string str; getline(cin,str); char ch; cin>>ch; int x='a'-'A'; int count=0; if(ch>='a'&&ch<='z'){//如果是小写 for(auto i:str) if(i==ch||i==(ch-x))//搜索本身和大写形式 count++;} else{//如果是大写 for(auto i:str) if(i==ch||i==(ch+x))//搜索本身和小写形式 count++;} cout<<count; return 0; }
看到题目提示哈希表 也可以 但没必要吧