核心思想:(类似于厄拉多塞筛选)
建立一个长度128的数组用来计数;(数组下标恰好包含了ascll码表的所有值)
此时
- 数组下标可用于ascll码表*中各字符的表示
- 下标对应的值可用于计数
#include <stdio.h>
#include <string.h>
int main()
{
int a[128] = { 0 };
char c[100] = "";
gets(c);
int n = strlen(c);
for (int i = 0; i < n; i++)
{
a[c[i]]++;
}
for (int i = 0; i < 128; i++)
{
if (a[i] != 0)
printf("%c%d", i, a[i]);
}
return 0;
}