7-12 个位数字统计 (15 分)
给定一个整数n,统计每种不同的个位数字出现的次数。例如,给定n=100811,则有2个0,3个1,1个8。
输入格式:
输入一个不超过长整型范围的整数n。
输出格式:
对n中每一种不同的各位数字,以 D:M的格式在一行中输出该位数字 D及其在 n 中出现的次数 M。要求按 D 的升序输出。
输入样例:
100811
输出样例:
0:2
1:3
8:1
#include<stdio.h>
#include<math.h>
int main (void){
int n,k,s,a[100],i,flag=0;
static int b[10];
scanf("%d",&n);
while(n!=0){
s=n%10;
b[s]++;(计数器)
n/=10;
}
for(i=0;i<10;i++){
if(b[i]!=0){
a[flag] =i;
flag++;
}
}
for(i=0;i<flag;i++){
printf("%d:%d\n",a[i],b[a[i]]);
}
}