练习3-1 分数统计
输入一些学生的分数,哪个分数出现的次数最多?如果有多个并列,从小到大输出。
任务1:分数均为不超过100的非负整数。
任务2:分数均为不超过100的非负实数,但最多保留两位小数。
//任务1
#include<stdio.h>
#include<string.h>
int a[101];
int main()
{
int i,b,temp,max=0;
memset(a,0,sizeof(a));
while(scanf("%d",&b)==1)
{
temp=a[b%100];
temp++;
a[b%100]=temp;
}
for(i=0;i<101;i++)
{
if(max<a[i])
max=a[i];
}
printf("max is %d\n",max);
for(i=0;i<101;i++)
{
if(a[i]==max)
printf("%d ",i);
}
printf("\n");
}
//任务2
#include<stdio.h>
#include<string.h>
int a[10001];
int main()
{
int i,n,temp,max=0;
double b;
memset(a,0,sizeof(a));
while(scanf("%lf",&b)==1)
{
n=b*100;
temp=a[n%10000];
temp++;
a[n%10000]=temp;
}
for(i=0;i<10001;i++)
{
if(max<a[i])
max=a[i];
}
printf("max is %d\n",max);
for(i=0;i<10001;i++)
{
if(a[i]==max)
{
printf("%.2lf ",i/100.0);
}
}
printf("\n");
}