#include <stdio.h>
#include <string.h>
#define INT_LENGTH 100+1
#define FLOAT_LENGTH 10000+1
void TaskOne();
void TaskTwo();
int main()
{
//TaskOne();
TaskTwo();
return 0;
}
//Task1
void TaskOne()
{
int iScore[ INT_LENGTH]={0};
int iNumber,i;
int max;
printf("Please input students' score:\n");
//Skillfully using!Let the input score become an array subscript
while(scanf("%d",&iNumber)==1)
{
iScore[iNumber]++;
}
//Initialize the largest number of occurrences as iScore[0] and traverse other scores
max=iScore[0];
for(i=0;i< INT_LENGTH;i++)
{
if(iScore[i]>=max)
{
max=iScore[i];
}
}
//Print the most times of occurrences and print them as ascending order
for(i=0;i< INT_LENGTH;i++)
{
if(iScore[i]==max)
{
printf("%d ",i);
}
}
}
//Task2
void TaskTwo()
{
int i,iMaxCount;
double dScore[FLOAT_LENGTH]={0};
double dNumber;
printf("Please input students' score:\n");
while(scanf("%lf",&dNumber)==1)
{
dScore[(int)(dNumber*100)]++;
}
//Initialize the largest number of occurrences as iScore[0] and traverse other scores
iMaxCount=dScore[0];
for(i=0;i<FLOAT_LENGTH;i++)
{
if(dScore[i]>iMaxCount)
{
iMaxCount=dScore[i];
}
}
//Print the most times of occurrences and print them as ascending order
for(i=0;i<FLOAT_LENGTH;i++)
{
if(dScore[i]==iMaxCount)
{
printf("%.2lf\t",(double)i/100);
}
}
}