题目描述:
请统计一篇英文文章里所有小写字母各出现了几次。
输入描述:
输入若干行,处理到文件结尾。字符总数<=100000
输出描述:
输出若干行,按字符序输出每种小写字符的出现次数,没有出现的字符不用输出。
示例1:
输入
abc abc def
abab ccc
ccc ccc
输出
a:4
b:4
c:11
d:1
e:1
f:1
AC代码如下:
#include<iostream>
#include<cstring>
using namespace std;
int main()
{
char i,j;//输入的字符
int temp[100000] = {0}; //根据题目的数量给出数组记录次数
//多组输出
while(~scanf("%c",&i))
{
if(i>='a' && i<='z')
{
//这里本人也是看大佬的题解
//字符在C语言/c++中是以ASCII码中的“数字”存在.
//例如:temp[a] = temp[某个数字]、可以看ASCII表。
//所以这个时候temp[i]++只要是相同的字母就可以累加啦!
temp[i]++;
}
}
//根据上面的知识点
for(j='a';j<='z';j++)
{
if(temp[j] > 0){
printf("%c:%d\n",j,temp[j]);
}
}
return 0;
}