用c++输入一个字符串,统计其中各个字符出现的次数。 输入一个字符串str,长度不超过50,由大小

用c++输入一个字符串,统计其中各个字符出现的次数。输入一个字符串str,长度不超过50,由大小写字母,数字组成输出该字符中总共出现了哪些字符,分别出现了多少次,字符的显... 用c++输入一个字符串,统计其中各个字符出现的次数。
输入一个字符串str,长度不超过50,由大小写字母,数字组成
输出该字符中总共出现了哪些字符,分别出现了多少次,字符的显示顺序按照ASCII码排序。
展开
 我来答
匡别妖
推荐于2017-09-23 · TA获得超过505个赞
知道小有建树答主
回答量:825
采纳率:0%
帮助的人:319万
展开全部
#include <iostream>
#include <string>
using namespace std;

void main()
{
int i;
string str;
getline(cin,str);

//cout<<str.size();

int ch[2][26]={0};
int num[10]={0};

for(i = 0; i<str.size();i++)
{
if(str[i]>='A' && str[i]<='Z')
ch[0][str[i]-'A']++;
else if(str[i]>='a' && str[i]<='z')
ch[1][str[i]-'a']++;
else if (str[i]>='0' && str[i]<='9')
num[str[i]-'0']++;
}
for(i=0;i<26;i++)
if(ch[0][i])
cout<<char('A'+i)<<':'<<ch[0][i]<<endl;
for(i=0;i<26;i++)
if(ch[1][i])
cout<<char('a'+i)<<':'<<ch[1][i]<<endl;
for(i=0;i<10;i++)
if(num[i])
cout<<char('0'+i)<<':'<<num[i]<<endl;
}
更多追问追答
追问
谢谢
可是,,和老师给的答案的顺序不一样
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式