题解 | #统计字符串中各字母字符对应的个数#
统计字符串中各字母字符对应的个数
https://www.nowcoder.com/practice/ec2a5ab818be4851948d5b0d83a3d8f4
#include <iostream> // write your code here...... #include <map> using namespace std; int main() { char str[100] = { 0 }; cin.getline(str, sizeof(str)); map<char,int> char_num; //创建map容器,键存储字符,值存储个数 for(int i =0;i<26;i++) { char_num.insert(make_pair(65+i,0)); } for(int j=0;j<26;j++) { char_num.insert(make_pair(97+j,0)); } //通过两次循环将所需统计的键值对加入,并将值初始化为0 for(int k =0;k<sizeof(str)/sizeof(char);k++) { if(char_num.count(str[k])) { char_num[str[k]]++; } } //使用count函数,当存在时,对应值加1 for(auto &char_temp:char_num)//利用基于范围的循环将非零的键值对输出 { if(char_temp.second!=0) { cout<<char_temp.first<<":"<<char_temp.second<<endl; } } // write your code here...... return 0; }