统计数组中各数出现的次数
害,不说了,上代码。。。
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
int i,k,j;
int cs[10]={0};
for(i=0;i<=9;i++){
scanf("%d",&k);
cs[k]++;
}
for(j=0;j<=9;j++)
printf("Number of %d:%d\n",j,cs[j]);
return 0;
}
输出结果
Number of 0:0
Number of 1:1
Number of 2:1
Number of 3:1
Number of 4:1
Number of 5:2
Number of 6:1
Number of 7:1
Number of 8:1
Number of 9:1
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
int i,c;
int cs[10]={0};
while((c=getchar())!=EOF)
if(isdigit(c))
++cs[c-'0'];
for(i=0;i<=9;++i)
printf("Number of %d:%d\n",i,cs[i]);
return 0;
}
求数组中出现最多数的次数
这两类题其实本质是一样的,我也放一下代码。。
#include<stdio.h>
#include<stdlib.h>
#include<math.h>
int main(){
int i,k,j,max;
int cs[200001]={0};
for(i=0;i<=9;i++){
scanf("%d",&k);
cs[k]++;
}
max=cs[0];
for(j=0;j<=200000;j++)
if(cs[j]>max)
max=cs[j];
printf("%d",max);
return 0;
}