#include<stdio.h>
int main(void)
{
int len;
long num, k;
int i;
int shuzi[10] = { 0 };
scanf("%d", &num);
len = i = k = 0;
k = num;
while (num > 0)
{
len++;
num /= 10;
}
while (k > 0)
{
i = k % 10;
shuzi[i] = shuzi[i] + 1;
k /= 10;
}
for (int j = 1; j <= len; j++)
{
if (shuzi[j] != 0)
printf("%d:%d\n", j, shuzi[j]);
}
}
该代码有个缺陷,就是数字num的长度不能过长,否则就报错= =