#include <iostream>
#include <cstring>
using namespace std;
int main()
{
char ch[1000]; //要输入的数
cin >> ch;
int len = strlen(ch); //用strlen的时候别忘了加cstring或者string.h头文件
int arr[10] = {0}; //初始化arr
for (int i = 0; i < len; i++)
{
arr[ch[i] - '0'] += 1;
}
for (int j = 0; j < 10; j++)
{
if (arr[j] > 0) //代表如果j这个数的出现次数大于0
{
cout << j << ":" << arr[j] << endl;
}
}
}
arr[10]的作用是存储0~9这10个十进制数的出现频次
第一个for循环里用ch[i] - '0'中的减号来将字符转换成int型
比如输入33344445的话可以看出索引位(从0开始)为3的时候‘3’出现了三次,索引位为4的时候‘4’出现了四次,索引为5的时候‘5’出现了一次