题干:给定一系列正整数,对每个正整数的每一位数字统计0~9各个数字的出现次数,求出现次数最多的数字。输入:是整数n(1<=n<=100),表示有n个整数;第二行是n个整数值。
#include<>
int main()
{
int i,j,p,m,n,k,max,a[100],t=10;
int b[10]={0};
int c[10]={0,1,2,3,4,5,6,7,8,9};
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%d",&a[i]);
}
for(i=0;i<n;i++)
{
for(j=0;a[i]/(t/10);j++)
{
m=(a[i]%t)/(t/10);
t=t*10;
for(p=0;p<10;p++)
{
if(m==c[p])
b[p]++;
}
}
t=10;
}
max=b[0];
for(i=0;i<10;i++)
{
if(b[i]>max)
{
max=b[i];
k=i;
}
}
printf("出现次数最多%d次的数字是 %d",max,c[k]);
for(i=k+1;i<10;i++)
{
if(b[i]==max)
printf(" %d",c[i]);
}
return 0;
}
欢迎批评指正~