1、 /*按平均分排序*/ void pfen(); /*按总分排序*/ void addnew(); /*录入学生成绩*/ void pall(); /*显示所有成绩*/ void check(); /*查询菜单*/ void pnum(); /*按学号排序*/ void pjing(); /*精确查找*/*/ /*主菜单*/ main() char choose; while(1) printf(ntt*); printf(ntt* 欢迎使用成绩管理系统 *ntt* *ntt* 请选择 *ntt* 1. 录入学生成绩 *ntt* 2. 查询学生成绩 *ntt* 3. 清屏 *ntt* 0. 退
2、出程序 *nn请选择: scanf(%c,&choose);getchar(); switch(choose) case 1: addnew(); break; case 2 check(); case 3 system(cls0 exit(0); default:输入错误,请从新输入! /*/ /*录入学生成绩*/ void addnew() int n,m,i,p; FILE *file; sum=0.00000; average=0.00000; if(c:student.dat,rb)=NULL) file = fopen(, wb+ /* 创建一个文件*/请输入需要录入的学生人数:
3、scanf(%dn); for(i=0;in;i+) 输入第%d个同学信息:n,i+1);姓名:%sstui.name);学号:stui.number);输入科目个数:m); stui.w=m;按科目(回车)成绩(回车)的顺序输入: n /* 录入成绩*/ for(p=0;pm;p+)stui.chengp.subject);stui.chengp.point); stui.sum=stui.sum+stui.chengp.point; stui.average=stui.sum/m; /* printf(总分%f , 平均分%fn ,stui.sum,stui.average);*/ fwr
4、ite(&stui,sizeof(stu),1,file); /* 把stu写入文件*/ fclose(file); /* 关闭文件*/ fflush(stdin);void check() char choose;ntt* 查询菜单 *ntt* 1. 按学号排列 *ntt* 2. 按总分排列 *ntt* 3. 按平均分排列 *ntt* 4. 精确查询 *ntt* 5. 显示所有学生成绩 *ntt* 6. 清屏 *ntt* 0. 返回 * pnum(); pfen(); pjun(); case 4 pjing();5 pall();6 main(); /*显示所有成绩*/ void pall
5、() int i=0,m;)=NULL) printf(Open error! getch(); fread(& while(feof() /* 循环整个文件*/姓名-学号-总分-平均分n%s %5d %10.1f %8.1fn,stui.name,stui.number,stui.sum,stui.average); 科目-成绩n for(m=0;m0;j-) for(i=0;j; if(stui.numberstui+1.number) /*对比学号,对换stu*/ bm=stui; /*交换位置*/ stui=stui+1; stui+1=bm; i+) /* 交换后从新排序*/ for(m=0;m+) void pfen() int m; if(stui.sumstui+1.sum) /*显示到屏幕*/ /*按平均分排序*/ void pjun() if(stui.averagestui+1.average) void pjing() int n;请输入要查询的学生的学号: if(n=stui.number) /*输出对应的学号的学生成绩*/ printf(/*结束*/
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1