c语言学生成绩管理系统.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《c语言学生成绩管理系统.doc》由会员分享,可在线阅读,更多相关《c语言学生成绩管理系统.doc(20页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、青岛农业大学课程设计报告 题 目: 学生成绩管理系统 姓 名: 卫首先 学 院: 城信系 专 业: 计算机应用 班 级: 12应用 学 号: 指导教师: 陆晓君 2012年3月28日 目 录一 设计目的.1二 课程设计的内容.2三 课程设计的要求与数据.3四 课程设计应完成的工作.4五 总体设计(包含几大功能模块).5六 详细设计(各功能模块的具体实现算法流程图).6七 调试分析(包含各模块的测试用例,及测试结果).7八 总结.8十 参考资料.9一 设计目的进一步加深、巩固所学专业课程(C语言程序设计)的基本理论知识,理论联系实际,进一步培养自己综合分析问题和解决问题的能力。掌握运用C语言独立
2、地编写、调试应用程序和进行其它相关设计的技能。二 课程设计的内容对学生信息(包括学号、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统计、退出.将学生的成绩信息进行记录,信息内容包含:(1)学生的学号(2)学生的姓名(3)学生的成绩。假设,现收集到了一个班学生的所有成绩信息,要求用C语言编写一个简单的成绩管理系统,可进行录入、查询、修改和浏览等功能。学习相关开发工具和应用软件,熟悉系统建设过程。三 课程设计的要求与数据1、用C语言实现系统;2、对学生信息(包括学号、姓名、语文、数学、英语、平均分)进行管理,包括学生成绩的信息输入、输出、查询、删除、排序、统
3、计、退出.3、学生信息包括:其内容较多,为了简化讨论,要求设计的管理系统能够完成以下功能:(1) 每一条记录包括一个学生的学号、姓名、3门课成绩(2)、成绩信息录入功能:(成绩信息用文件保存,可以一次完成若干条记录的输入。)(3)、成绩信息显示浏览功能:完成全部学生记录的显示。(4)、查询功能:完成按姓名查找学生记录,并显示。(5)成绩信息的删除:按学号进行删除某学生的成绩.(6)、排序功能:按学生平均成绩进行排序。(7)、应提供一个界面来调用各个功能,调用界面和各个功能的操作界面应尽可能清晰美观!四 课程设计应完成的工作(1)编写算法;(2)算法测试,并有具体的测试结果和结果分析;(3)撰写
4、课程设计报告。内容包括:1) 封面扉页2) 设计任务书3) 目录4) 总体设计方案(包括流程图)5) 使用说明及运行实例(包括界面)6) 成员设计内容简介7) 项目源程序代码(注意注释的使用)8) 指导教师评语五 总体设计(包含几大功能模块) 1、成绩录入功能2、成绩输出功能3、成绩查询功能4、删除模块 5、排序功能 6、统计功能 7、退出系统六 详细设计(各功能模块的具体实现算法流程图)6.1各函数的功能和实现1、输入初始的学生信息:输入信息包括学生的姓名、学号以及学生的成绩等相关信息;可用函数void input(struct Student stu)来实现此操作。 2、成绩输出模块:输出
5、学生的信息以及成绩void output(struct Student stu):通过void fun()输出主菜单。3、 修改模块:用函数void xiugai(struct Student stu)来实现4、 查询模块:通过学生的姓名来查看学生的相关成绩void chazhao2(struct Student stu);,同时也可以通过void chazhao1(struct Student stu)按学号查询相关成绩5、 排序模块:用函数void paixu_xuehao(struct Student stu)进行学号排序,用函数void paixu_shuxue(struct Stud
6、ent stu)进行数学成绩排序;通过函数void paixu_yuwen(struct Student stu)进行语文成绩排序;通过函数void paixu_yingyu(struct Student stu)进行英语成绩排序void paixu_pingjunfen(struct Student stu)进行平均分排序。6、删除功能:用函数void shanchu(struct Student stu) 来实现7、退出系统:在主菜单中按“0”即可退出 如图6.1 图 6.1七 调试分析(包含各模块的测试用例,及测试结果) 7.1源程序1:主函数:int main()struct Stud
7、ent stu100,*p=stu;int a;while(a!=6) fun();x scanf(%d,&a); switch(a) case 1: input(p);break; case 2: output(p);break; case 3: printf(按学号查找请按1n按姓名查找请按2n);scanf(%d,&a);switch(a) case 1:chazhao1(p);break;case 2:chazhao2(p);break; break; case 4: printf(按学号排序请按 1n按语文成绩排序请按 2n按数学成绩排序请按 3n按英语成绩排序请按 4n按平均分排序
8、请按 5n); scanf(%d,&a);switch(a) case 1:paixu_xuehao(p);break;case 2:paixu_yuwen(p);break;case 3:paixu_shuxue(p);break;case 4:paixu_yingyu(p);break;case 5:paixu_pingjunfen(p);break; break; case 5: xiugai(p);break; case 6:/ shanchu(p)break; case 0:return 0; return 0;:2:显示菜单函数:void fun()int i; for(i=0;i
9、80;i+) putchar(=); printf(tt学生成绩管理系统n); printf(tt设计人:卫首先n); printf(从键盘输入以下功能首位数字进行操作n); printf(1:信息输入保存 t2:输出n); printf(3:查找 t4:排序n); printf(5:修改 t6:删除nttt0:退出n); for(i=0;i80;i+) putchar(=); printf(输入要查询内容);测试结果::3:输入保存数据程序:void input(struct Student stu) FILE *fp; char sign,x10; int i=0;while(sign!=
10、n&sign!=N) printf(输入学生学号:); scanf(%d,&stui.num); printf(输入学生姓名:); scanf(%s,&stui.name); printf(输入学生的语文、数学、英语:n); scanf(%f%f%f,&stui.score0,&stui.score1,&stui.score2); stui.aver=(stui.score0+stui.score1+stui.score2)/3;gets(x); /*清除多余的输入*/ printf(是否继续输入?(Y/N):n); scanf(%c,&sign); i+; if(fp=fopen(stu.t
11、xt,wb)=NULL) printf(cannot open filen); for(i=0;iN;i+) if(fwrite(&stui,sizeof(struct Student),1,fp)!=1) printf (file write errorn); fclose(fp); 测试结果::4:输出程序: void output(struct Student stu) int i; FILE *fp; if(fp=fopen (stu.txt,rb)=NULL) / 打开输入文件atu.dat 从文件中输入数据到数组中 printf(cannot open filen); printf
12、(输出各学生的信息:n学号、姓名、 语文 数学 英语 平均分:n); for(i=0;iN;i+) fread (&stui,sizeof(struct Student),1,fp); / 从fp指向的文件读入一组数据 printf(%dt%st%7.2ft%7.2ft%7.2ft%7.2fn,stui.num,stui.name,stui.score0,stui.score1,stui.score2,stui.aver); fclose (fp); / 关闭文件stu.dat 运行结果:5:修改数据程序:void xiugai(struct Student stu)/修改 int i=0,c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 学生 成绩管理系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内