个位数字统计
作者:互联网
给定一个整数n,统计每种不同的个位数字出现的次数。例如,给定n=1,则有2个0,3个1,1个8
输入格式:
输入一个不超过长整型范围的整数n。
输出格式:
对n中每一种不同的各位数字,以 D:M
的格式在一行中输出该位数字 D
及其在 n 中出现的次数 M
。要求按 D
的升序输出。
输入样例:
100811
输出样例:
0:2 1:3 8:1
1 #include <stdio.h> 2 3 int main() 4 { 5 //n为输入的数 s为储存每一次的个位数 6 int n,s,a[100],flag=0; 7 //等同于 int b[10]={0}; 8 static int b[10]; 9 // input 10 scanf("%d",&n); 11 //特殊情况n=0打印; 12 if(n==0) 13 printf("0:1\n"); 14 //提取出每一个数 分别对应相应的数组编号相加 直至n=0; 15 while(n!=0) 16 { 17 s=n%10; 18 b[s]++; 19 n/=10; 20 } 21 //判断是各位数字并用a[flag]储存 22 for(int i=0;i<10;i++) 23 { 24 if(b[i]!=0) 25 { 26 a[flag] =i; 27 flag++; 28 } 29 } 30 //打印结果 31 for(int i=0;i<flag;i++) 32 printf("%d:%d\n",a[i],b[a[i]]); 33 return 0; 34 }
标签:10,输出,int,个位数,统计,格式,输入 来源: https://www.cnblogs.com/JIeJaitt/p/14766097.html