输入格式:
每个输入包含 1 个测试用例,即一个不超过 1000 位的正整数 N。

输出格式:
对 N 中每一种不同的个位数字,以 D:M 的格式在一行中输出该位数字 D 及其在 N 中出现的次数 M。要求按 D 的升序输出。

输入样例:

100311

输出样例:

0:2
1:3
3:1

代码1:

#include <stdio.h>
int main(){
	int num[10]={0},i;
	char str[1000];
	scanf("%s",str);//gets(str);直接输入带空格的字符串
	for(i=0;str[i] != '\0';i++){
		num[str[i] - '0']++;
	}
	for(i=0;i<10;i++){
		if(num[i]>0){
			printf("%d:%d\n",i,num[i]);
		}
	}
	return 0;
}

代码2:

#include <stdio.h>
int main(){
    char c,i;
    int count[10] = {0};
    while((c = getchar()) != '\n')
        count[c - '0']++;
    for(i = 0; i < 10; i++) 
    if(count[i]){
        printf("%d:%d\n", i, count[i]);
    }
    return 0;
}