#include "stdafx.h"
#include <io.h>
#include <stdlib.h>
struct student{
int num;
int score;
};
int sign[47];
struct student stus[47];
int stucount=47;
double sum( ){
double s=0;
for(int i=0;i<stucount;i++)
{
s=s+stus[i].score;
}
s=s/(stucount*1.0);
return s;
}
int max(){
int max_num=stus[0].score,z=0;
for(int i=1;i<stucount;i++)
if(max_num<stus[i].score)
max_num=stus[i].score;
for(int i=0;i<stucount;i++)
if(max_num==stus[i].score)
{sign[z]=i;
z++;}
return z;
}
int min(){
int min_num=stus[0].score,z=0;
for(int i=1;i<stucount;i++)
if(min_num>stus[i].score)
min_num=stus[i].score;
for(int i=0;i<stucount;i++)
if(min_num==stus[i].score)
{sign[z]=i;
z++;}
return z;
}
int fail(){
int z=0;
for(int i=0;i<stucount;i++)
if(stus[i].score<60)
{
sign[z]=i;
z++;
}
return z;
}
void init(){
FILE *datafile=fopen("D:\\Book1.csv","r");
if(NULL==datafile){
printf("nofile\n");
return;
}
for(int i=0;i<stucount;++i){
fscanf(datafile,"%ld,%d\n",&stus[i].num,&stus[i].score);
}
fclose(datafile);
}
void info(){
printf("**********************\n");
printf("* *\n");
printf("* 学生成绩管理系统 *\n");
printf("* *\n");
printf("**********************\n");
printf("输入0退出;输入1求最高分,输入2求最低分,输入3求平均分,输入4求不及格人员\n");
}
int _tmain(int argc, _TCHAR* argv[])
{
init();
int op,max_num,min_num,fail_num;
double s;
do{
info();
scanf("%d",&op);
switch(op){
case 1:
max_num=max();
for(int i=0;i<max_num;i++)
printf("%ld %d\n",stus[sign[i]].num,stus[sign[i]].score);
break;
case 2:
min_num=min();
for(int i=0;i<min_num;i++)
printf("%ld %d\n",stus[sign[i]].num,stus[sign[i]].score);
break;
case 3:
{
s=sum();
printf("%lf\n",s);}
break;
case 4:
fail_num=fail();
for(int i=0;i<fail_num;i++)
printf("%ld %d\n",stus[sign[i]].num,stus[sign[i]].score);
break;
}
system("pause");
system("cls");
}
while(op!=0);
return 0;
}