题解!!!
2026-09-21 22:35:45
发布于:浙江
208阅读
0回复
0点赞
题目描述
输入一行字符串,统计其中每个英文字母出现的次数(不区分大小写),并按字母顺序(a~z)输出出现过的字母及其次数
思路 这种题还要思路吗
因为要按字母顺序输出,且要"字母 → 次数"的映射关系,用 map<char,int> 天然有序,非常合适。
#include<bits/stdc++.h>
#define int long long
using namespace std;
map<char,int> a;
string s;
signed main(){
getline(cin,s);
for(int i=0;i<s.size();i++){
if(s[i]>='A'&&s[i]<='Z'){
a[s[i]+32]++;
}
else if(s[i]>='a'&&s[i]<='z'){
a[s[i]]++;
}
}
for(int i=97;i<=122;i++){
if(a[i]>0){
cout<<char(i)<<":"<<a[i]<<endl;
}
}
}
全部评论 2
我在照相见过你!!!!!!!
2026-07-25 来自 河北
0是csp不是csj
2026-07-24 来自 安徽
0








有帮助,赞一个