资源描述:
《学生成绩管理系统v30》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、#include#include#include#defineN50〃最大人数#defineG150//字符串个数intaveragel(intscore山intn);voidprintfscorel(intscore[]Jongnum[]Jntn,charname[][10]);//输出学号和考试成绩voidsearchnameflongnum[],intn,charname[][10],intscore[],charf[]);/*查找姓名得出排
2、名和成绩*/intsearch(longnum[],longz,intn);〃查找学号得出排名voidreadscore(intscore[],charname[][10],intnzlongnum[]);//读入学号和考试成绩和姓名intaverage2(intscore[],intn);〃求学生的的总平均分voiddatasortl(intscored,longnum[],intn,charname[][10]);//成绩由高到低进行排序voiddatasort2(intscore[],longnum
3、[],intn,charname[][10]);//voiddatasort3(intscore[],longnum[],intn,charname[][10]);//成绩由低到高进行排序voidsortstringfcharname[][10],intn,intscore[],longnum[]);//按姓名的字典顺序进行排序main()charname[G][10];//定义二维字符数组charf[10];intscore[N];intchoice,np<,pos;longnum[N],乙y;inti
4、;floata=0,b=0,c=0,d=0,e=0;//表示学生的成绩等级高低printf("请输入学生人数:”);scanf(“%d“,&n);readscorefscore,name,n,num);//读入分数名字和学号do{menu();//输出菜单scanf(”%d",&choice);switch(choice){case1:x=averagel(score,n);〃求学生的总分y=average2(score,n);〃求学生的的总平均分printf("学生总平均分为%d,总分为%d",y,x)
5、;break;case2:datasortlfscore^um,n,name);//成绩由高到低进行排序printf("学生成绩按高到低排序如下:");printfscorel(score,num,n,name);break;case3:datasort3(score,num,n,name);//成绩由低到高进行排序printf("学生成绩按低到高排序如下:");printfscorel(score,ame);break;case4:datasort2(score,num,n,name);//按学
6、号山小到大排岀成绩表printfC1学生学号按低到高排序如下:“);printfscorel(score,num,ame);break;case5:printfC*®姓名的字典顺序排出成绩表:n);sortstring(name,n,score,num);break;case6:printfC1请输入要查找的学生学号:J;scanf(“%ld“,&z);datasortl(score,num,n,name);pos=search(num,z,n);〃搜索学号if(pos!=-1)printf("s
7、core=%d,排名为%d”,score[pos],pos+l);elseprintfC1没有找到『);break;case7:printfC请输入要查找的学生姓名:J;getchar();gets(f);//输入姓名searchname(num,n,name,score,f);〃查找名字得出排名和成绩break;case&printf(”等级分类如下:”);for(i=0;ivn;i++){if(score[i]>=90){a++;}elseif(score[i)>=80){b++;}else
8、if(score[i]>=70){C++;}elseif(score[i]>=60){d++;}elsee++;}printf(”优秀(90・100)有%®个,良好(80・89)有%血个,中等(70-79)有%0个,及格(60-69)W%.0f个,不及格(0-59)<%.0f个”,a,b,c,d,e);printf("优秀(90-100)占%.2f,良好(80-89)占%.2f,中等(70-79)占%.2f,及格(60-6