学生管理系统报告正文(毕业设计)_第1页
学生管理系统报告正文(毕业设计)_第2页
学生管理系统报告正文(毕业设计)_第3页
学生管理系统报告正文(毕业设计)_第4页
学生管理系统报告正文(毕业设计)_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

目录第1章引言111设计目的112设计目标113研究思路214小组分工215本章小结2第2章总体设计321系统需求322功能结构323本章小结4第3章详细设计531学生信息定义532功能模块533本章小结6第4章系统实现741系统主界面742学生信息录入界面943学生成绩管理界面1044学生成绩统计界面1945学生成绩查询界面2746本章小结32第5章测试和调试3351测试和调试3352系统存在的问题3353收获及心得3354本章小结34参考文献35致谢36第1章引言11设计目的目前,学校工作繁杂、资料重多,虽然各类管理信息系统已进入社会,但还未普及,而对于学生信息管理来说,目前还没有一套完整的、统一的系统。因此,开发一套适和大众的、兼容性好的学生管理系统是很有必要的。12设计目标设计一个小型学生成绩管理系统。该系统将完成学生信息的查询、添加、修改,学生成绩的查询等功能。121基本功能对学校学生信息管理的系统,主要划分为以下三个模块录入包括录入学生基本个人信息。管理包括对学生成绩信息的修改,增加,删除。查询按学号,姓名查询、输出学生所有信息。统计按总分和平均分进行排名,以及统计及格人数,优秀的人数。学生成绩管理系统的功能结构图如图11所示。图11学生成绩管理系统功能模块图122扩展功能可以增加新学生的信息,统计及格人数和。13研究思路首先确定要实现的功能,在我们的学生成绩管理系统中主要体现对学生成绩信息的操作如添加,查询,修改等;其次体现了学生对自己信息的查询,及浏览本人成绩信息的功能。在具体实现时,利用C的输出格式显示操作的界面,利用函数实现相应的模块功能,再利用循环、选择可灵活进行重复操作。14小组分工本次实训由衡欣、魏千森、王跃霖、王晓峰我们四位同学一组,每位同学的具体分工如下衡欣负责整个系统的框架以及整个界面的实现和学生成绩管理函数的实现以及各个函数的衔接;王晓峰负责学生成绩信息录入函数的实现;王跃霖负责学生成绩统计函数的实现;魏千森负责学生成绩查询函数的实现;15本章小结本章主要对学生成绩管理系统以及研究思路进行了简单的介绍,为后面的工作做铺垫。第2章总体设计21系统需求管理人员在学生成绩信息录入界面可以录入多位学生信息,录入完毕后可以在学生成绩管理界面完成修改、增加、查询学生成绩信息等功能。管理人员也可以在学生信息查询界面完成查询学生的基本信息的功能,以及在学生成绩统计界面查询学生成绩的总分排名和平均分排名以及学生及格的人数和优秀的人数。22功能结构通过前面的分析,可以得到学生成绩管理系统如图21所示。其功能如下(1)录入学生信息管理员输入学生基本信息和成绩信息。(2)学生成绩操作成绩管理界面,可以对学生成绩信息进行修改,增加,删除。(3)学生成绩统计进入成绩统计界面,可以查询学生成绩的排名和及格,优秀人数信息。(4)学生成绩查询进入查询界面可查询所有学生的成绩或按学号以及姓名查询学生成绩。图21学生成绩管理系统体系结构图23本章小结本章主要从总体上对学生成绩管理系统的各功能模块进行了分析。第3章详细设计31学生信息定义本系统中主要考虑了学生的姓名、学号、性别、班级、科任老师、高等数学、大学英语、C成绩等信息,利用结构体来定义每个学生的具体信息,利用结构体数组来存放多个学生的信息。学生结构定义如下STRUCTSTUENT/定义一个结构体变量INTNUMBER/学生学号CHARNAME20/学生姓名CHARSEX20/性别INTGRADE/班级CHARTEACHER20/科任老师FLOATMATH/高等数学FLOATENGLISH/大学英语FLOATC/C语言FLOATJAVA/JAVA成绩FLOATSUM/总成绩FLOATAVE/平均成绩STU200,A/定义一个能容下200个学生信息的静态结构体数组以存放学生的相关信息,和一个空闲的静态结构体变量A,为后面的排名函数作准备。32功能模块1主模块这一模块是系统的主界面,在MAIN函数中包括以下几个函数,它们的函数名以及主要功能如下VOIDMENU主菜单功能。(2)学生信息录入,管理模块学生信息录入模块由INPUT函数实现,具体实现学生信息的录入。学生成绩管理模块由MENU2函数实现,具体实现学生成绩修改、增加、删除等操作通过调用三个函数完成,分别为VOIDREVAMP_STUDENT/主菜单2的学生成绩修改VOIDINCREASE_STUDENT/增加VOIDDELETE_STUDENT/删除(3)学生成绩统计,查询模块学生成绩统计,查询模块由MENU3和MENU4函数实现,可以统计学生的总成绩和平均成绩排名、及格和优秀人数。查询所有学生和按学号和姓名查询学生成绩信息。通过调用如下函数来实现VOIDRANK_TOTAL_SCORE/总成绩排名VOIDRANK_AVERAGE_SCORE/平均成绩排名INTPASS_SCOREFLOATM/及格人数INTPASS_TOTAL_SCOREFLOATM/总分及格人数INTEXCELLENT_SCOREFLOATM/优秀人数INTESCELLENT_TOTAL_SCOREFLOATM/总分优秀人数VOIDDISPLAY/菜单4下的所有学生成绩显示VOIDNUMBER_CHECK/按姓名查询VOIDNAME_CHECK/按学号查询33本章小结本章主要对学生成绩管理系统学生的结构定义、管理员的操作做简单描述,为下一章的具体实现做准备。第4章系统实现41系统主界面在学生成绩管理系统主界面有五个选项,分别为学生成绩录入、学生成绩管理、学生成绩统计、学生成绩查询以及退出系统。运行效果如图41所示。图41学生成绩管理系统主界面设计思路利用DOWHILE循环实现反复显示主界面各信息,利用COUT语句输出主界面的各信息,利用SWITCHCASE实现选择操作,INPUT函数实现学生信息录入,MENU2函数实现学生成绩管理,利用MENU3函数实现学生成绩统计,利用MENU4函数实现学生成绩查询,利用EXIT函数实现退出系统。核心代码如下VOIDMENU/定义一个主界面函数DOCOUTCHOOSESWITCHCHOOSECASE1INPUTBREAK/录入学生信息CASE2MENU2BREAK/学生成绩管理,包括修改、增加、删除CASE3MENU3BREAK/学生成绩统计,包括总分排名、及格人数等CASE4MENU4BREAK/学生成绩查询,按姓名,学号CASE0EXITBREAK/退出系统DEFAULTCOUTN/学生数量FORI0ISTUINUMBERCOUTSTUINAMECOUTSTUISEXCOUTSTUIGRADECOUTSTUITEACHERCOUTSTUIMATHCOUTSTUIENGLISHCOUTSTUICCOUTSTUIJAVASTUISUMSTUIMATHSTUIENGLISHSTUICSTUIJAVA/总分计算STUIAVESTUISUM/40/平均分计算COUTPRESSSWITCHPRESS/选择操作CASE0BREAK43学生成绩管理界面在学生信息操作界面有四个选项,分别为学生成绩修改、学生成绩、学生成绩删除以及返回到学生成绩管理系统主界面。运行效果如图43所示。图43学生成绩管理界面设计思路利用DOWHILE循环反复显示这一子界面的信息,利用COUT语句输出信息,利用REVAMP_STUDENT函数实现学生成绩的修改,INCREASE_STUDENT函数实现学生成绩的增加,DELETE_STUDENT函数实现新学成绩的删除。核心代码如下VOIDMENU2/主界面下2号菜单函数DOCOUTCHOOSESWITCHCHOOSECASE1REVAMP_STUDENTBREAK/学生信息修改CASE2INCREASE_STUDENTBREAK/学生信息增加CASE3DELETE_STUDENTBREAK/学生成绩删除CASE4MENUBREAK/返回主界面DEFAULTCOUTRSFORI0ICHOOSE_2_1SWITCHCHOOSE_2_1CASE1COUTSTUINUMBERCOUTSTUINAMECOUTSTUISEXCOUTSTUIGRADECOUTSTUITEACHERCOUTSTUIMATHCOUTSTUIENGLISHCOUTSTUICCOUTSTUIJAVASTUISUMSTUIMATHSTUIENGLISHSTUICSTUIJAVASTUIAVESTUISUM/40COUTI_SFORINISTUINUMBERCOUTSTUINAMECOUTSTUISEXCOUTSTUIGRADECOUTSTUITEACHERCOUTSTUIMATHCOUTSTUIENGLISHCOUTSTUICCOUTSTUIJAVASTUISUMSTUIMATHSTUIENGLISHSTUICSTUIJAVA/总分计算STUIAVESTUISUM/40/平均分计算NNI_S433学生成绩删除界面在学生信息删除界面管理员可以删除学生的信息,运行效果如图46所示。图46学生成绩删除界面设计思路利用IF和FOR循环来匹配要删除的学生的姓名然后利用逐个替换法用要删除的对象的后一个元素替换前一个元素,在匹配找到要删除的对象前利用COUT语句以及CIN语句来实现根据提示要删除的学生的信息。利用SWITCHCASE确认删除后N自减1,以保证后续查询所有学生成绩信息的正确。核心代码如下VOIDDELETE_STUDENTCHARDS20INTCHOOSE_2_3COUTDSFORI0ICHOOSE_2_3SWITCHCHOOSE_2_3CASE1STUISTUI1NN1COUTCHOOSESWITCHCHOOSECASE1RANK_TOTAL_SCOREBREAK/总分排名CASE2RANK_AVERAGE_SCOREBREAK/平均成绩排名CASE3MENU3_3BREAK/及格人数CASE4MENU3_4BREAK/优秀人数CASE5MENUBREAK/返回主界面DEFAULTCOUT60COUT240COUT90COUT360COUTCHOOSESWITCHCHOOSECASE1COUTCHOOSESWITCHCHOOSECASE1DISPLAYBREAK/所有学生信息查询CASE2NUMBER_CHECKBREAK/按学号查询CASE3NAME_CHECKBREAK/按姓名查询CASE4MENUBREAK/返回主界面DEFAULTCOUTNUMBER_CFORI0ICHOOSE_NUMBER_CSWITCHCHOOSE_NUMBER_CCASE1MENU4BREAKCASE0MENUBREAK453按姓名查询设计思路利用FOR和IF语句来实现对比输入的学生姓名与已录入的学生姓名,如果一致则用COUT来输出学生的成绩信息。核心代码如下VOIDNAME_CHECKINTCHOOSE_N_C/定义一个按姓名查询成绩的选项按键CHARNAME_C20COUTNAME_CFORI0ICHOOSE_N_CSWITCHCHOOSE_N_CCASE1MENU4BREAKCASE0MENUBREAK46本章小结学生成绩管理系统主要包括学生成绩管理、成绩统计模块和成绩查询模块三大主要功能模块,本章主要对本系统中的每一功能模块作了较为详细的介绍。第5章测试和调试51测试和调试在组建时有数个函数的编译总是无法通过,经组员讨论以及翻书查阅回忆后,发现不能在前一个函数中调用编写顺序在其后面的函数,于是大家同意了解决的办法,就是在程序的开头声明了所有的函数后组建完成。在程序测试过程中,数据的输入及输出均能够正常进行。当用户在子界面完成操作以后,通常需要返回主界面。在测试的过程中,我们发现我们的系统在子界面完成操作以后不能返回主界面。为了能让程序有更优秀的表现,我们在一级子界面和二级子界面后均添加了一块SWITCHCASE代码,以CHOOSE或BACK为媒介,输入0或字符0以返回上一级界面。但又发现在一级子界面返回主界面时系统会直接退出,而非显示学生成绩管理系统主界面的各信息。于是我们在每个需要返回主界面的函数中都重新定义一个新的类似“CHOOSE”的变量,例如在按名字查询了学生成绩后需要返回主界面,就以函数的名字来定义一个“CHOOSE”变量CHOOSE_N_C其函数名为NAME_CHECK以免主界面的DOWHILE循环判断CHOOSE为0而直接退出系统。在调试过后,程序就能较完整地运行了。52系统存在的问题系统的功能尚且还不够完善,还需进一步的完善。比如1没有运用到类类型以及指针;2系统界面还可以进一步优化;3没有设计保存学生信息的功能;4如果按学号或者按姓名查询学生成绩的时候输入的是错误的数据则不能提示用户输入错误而是直接返回子界面;53收获及心得通过这次为期四周的C强化实践专周的活动,我们四位组员强化了自己的C水平,复习了各种C基础功能以及三种基本语句的应用,加深了对C程序设计的理解以及运用熟练程度。在实验专周中,通过三位指导老师的悉心帮助,完成了这个程序的编写,并且回忆起了很多已经遗忘的知识,填补了一些知识的漏洞。这次实践专周为我们今后的学习打下了坚实的基础。54本章小结本章主要对系统进行了简单的测试、指出存在的问题。参考文献1谭浩强编著C程序设计北京清华大学出版社,20042HARVEYMDEITEL,PAUALJAMESDEITEL著THECOMPLETECTRAININGCOURSESECONDEDITION邱仲潘等译C大学教程(第二版)北京电子工业出版社,20023BRIANOVERLAND著董梁等译C语言命令详解(第二版)北京电子工业出版社,2002致谢我们要首先感谢此次实训的三位指导教师的精心教导,使我们学会了如何用C编写一个简单的应用程序。一开始我们摸不着头绪,后来在老师的鼓励下慢慢摸索,尝试着编写代码,到后来越来越顺利,解决问题的速度也越来越快。我们通过这次实践学到了不少编写代码的方法与理念,比如编写一个程序之前,首先要对程序的设计要求有一个比较明确的认识,然后系统分析与系统设计,最后是设计代码与调试。这次实验专周让我们进一步加深了对C语言的理解和掌握,巩固了所学的理论知识,提高了我们的实践能力和计算机以及微软办公软件的综合运用能力。我们编写程序的过程是辛苦但快乐的,只有多加尝试,一边实践一边探索,我们的编写水平才能有长足的进步。在此,向三位指导老师表示最诚挚的感激电子科技大学成都学院2015届实践专周成绩评定表学生姓名衡欣学号1230630415专业计算机应用技术课程名称C强化实践设计题目学生成绩管理系统实验要求利用C相关知识实现学生成绩管理系统学生信息操作界面及实践报告的制作同组成员1230630417魏千森1230630418王跃霖1230630413王晓峰本次课程设计的心得体会在这次实践专周之前,我只尝试过一个人编写一些简单的程序;而在这次实践专周中第一次和同学们合作编写一个较完善的系统。这次实践专周让我进步了许多,比如如何规范地编写程序、如何快速地找到问题所在并成功解决;同时也让我看到了自己的诸多不足C的基础知识体系尚且不够完善、编写一些较难的功能时还比较吃力。这次实践专周既给了我努力学习C的动力,也让我明白还要继续提升自己的编程水平。成绩考核(由指导教师组填写)对小组做整体评阅。(前四项为优、良、中及格不及格,总成绩为通过不通过)。如个别学生不通过,请在备注栏标明。考勤程序及运行结果设计报告PPT及答辩总成绩备注指导教师组签字完成时间年月日电子科技大学成都学院2015届实践专周成绩评定表学生姓名魏千森学号1230630417专业计算机应用技术课程名称C强化实践设计题目学生成绩管理系统实验要求利用C相关知识实现学生成绩管理系统主界面和学生信息录入界面及实践报告的制作同组成员1230630415衡欣1230630418王跃霖1230630413王晓峰本次课程设计的心得体会经过这一周的C强化实践,不仅让我更加熟练掌握了C中的一些知识,而且也让我找到了我的不足。在我们的程序中,由于我们对类和指针不是很会运用,所以没有运用到它们的相关知识。但是,我相信,通过我以后的学习和实践,一定能运用到更多的知识。成绩考核(由指导教师组填写)对小组做整体评阅。(前四项为优、良、中及格不及格,总成绩为通过不通过)。如个别学生不通过,请在备注栏标明。考勤程序及运行结果设计报告PPT及答辩总成绩备注指导教师组签字完成时间年月日电子科技大学成都学院2015届实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论