博客上看到一道华为机考题,我就试着编写了一下,原文是用java编写的,我这里用C++编写,不过还是把它归为了转载。
原文地址:http://blog.csdn.net/wenj91/article/details/35445605
手动输入一个字符串,仅限小写字母,统计并输出每个字符在字符串中出现的次数,并输出。提示可以用map
例子:输入:aaabbbccc
输出:a 3
b 3
c 3
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
int num[26] ;
int main()
{
string str;
int index = -1;
cout<<"input a string:";
cin>>str;
for(int i =0 ;i<str.size();i++)
{
index = str[i] - 'a';
num[index]++;
}
for(int i = 0;i < 26;i++)
{
if(num[i] != 0)
{
char c = 'a' + i;
cout<<c<<":"<<"个数:"<<num[i]<<endl;
}
else;
}
return 0;
}