HJ2 计算某字符出现次数
描述
写出一个程序,接受一个由字母、数字和空格组成的字符串,和一个字符,然后输出输入字符串中该字符的出现次数。(不区分大小写字母)
数据范围:
1≤n≤1000
输入描述:
第一行输入一个由字母、数字和空格组成的字符串,第二行输入一个字符(保证该字符不为空格)。
输出描述:
输出输入字符串中含有该字符的个数。(不区分大小写字母)
示例1
输入:
ABCabc
A
输出:
2
解题思路
hash表存储形成对应关系即可,输出对应字符的出现次数即可。
#include <cctype>
#include <iostream>
#include<algorithm>
#include <string>
using namespace std;
int m[26];
int num[10];
int main() {
string s;
getline(cin,s);
for(int i=0;i<s.size();i++){
s[i]=tolower(s[i]);
if(s[i]>='a'&&s[i]<='z') m[s[i]-'a']++;
else if(s[i]>='0'&&s[i]<='9') num[s[i]-'0']++;
else continue;
}
char c;
cin>>c;
c=tolower(c);
if(c>='a'&&c<='z') cout<<m[c-'a']<<endl;
else cout<<num[c-'0']<<endl;
return 0;
}