例如:
输入我是中国人,我爱中国。
输出每个汉字的出现个数。
解题分析:
可以考虑的是这里是需要存储字符,还有出现的次数。
还有一个重点是如何存储汉子,汉子每个汉字应该占两个字节。
因此每个汉字存入两个char的数组中。
在这里可以用哈希算法进行储存,这是一种映射关系,可以方便的统计每个汉字出现的次数。
代码:
#include <iostream>
#include <cstdio>
#include <cstring>
using namespace std;
int hash[100][100];
int main()
{
char str[10000];
scanf(“%s”, str);
for(int i = 0; i < strlen(str); i+=2)
{
hash[ -(str[i]) ][ -(str[i+1]) ]++;
}
for(int i = 0; i < 100; i++)
{
for(int j = 0; j < 100; j++)
{
if(hash[i][j] != 0)
printf(“%c%c %d\n”, -i, -j, hash[i][j]);
}
}
return 0;
}