c++课程设计--成绩管理系统设计.pdf
《c++课程设计--成绩管理系统设计.pdf》由会员分享,可在线阅读,更多相关《c++课程设计--成绩管理系统设计.pdf(94页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目录前言l 1.系统分析21.1系统简介 21.2系统功能21.2.1登录端31.2.2管理员端31.2.3教师端41.2.4学生端51.3输入输出功能 62.系统设计 72.1系统流程图设计 72.2系统功能模块图设计82.3数据结构设计 .9 2.3.1课程基本信息 92.3.2管理员基本信息IO2.3.3教师基本信息ll 2.3.4学生基本信息112.4菜单结构设计.12 2.5输入输出格式设计142.5.1输入格式设计142.5.2输出格式设计152.6类及其继承关系.16 2.7文件结构设计.17 2.8代码规范化设计173.系统实现.17 3.1功能及算法(成员函数).18 3.1
2、.1管理员类.1 s 3.1.2教师类20 3.l 3学生类20 3.1.4课程类213.2类的继承关系 .22 3.3非成员函数22 3 4指针使用25 3.5多态的实现.25 3.6文件读写 273.7技术创新283.8代码编程规范 314.系统测试.32 4.1登录模块324.2管理员模块334.3教师端4 4学生端40 42 5.程序运行界面.43 5.1身份选择界面 43:丁怎:5.4密码修改455.5管理员端界面46 5 6教师端界面50 5.7学生端界面526.总结 536.1问题及解决方法.53 6.2算法分析与改进536.3技术经验与总结54 6.4程序使用说明54 7.附录
3、547.1程序文件名7 2源程序。54 54 ,削丢随着教育科技的进步,传统的学生成绩管理方式已经不能满足当代大学教师和学生的需求了,使用太过枯燥,简陋。该系统主要针对教师,方便教师管理学生成绩,同时又保证了个人信息的保密性。学生成绩管理系统,利用软件实现成绩增加、删除、修改、查询等功能,针对不同身份(管理员、教师、学生)提供不同的操作功能,使教师对成绩管理更加高效,提高工作效率。该系统还为教师提供了音乐播放功能,当老师处理成绩疲惫时,可以通过音乐放松身心。同时该系统针对学生,不仅实现管理个人信息而且还设计了连接教务处功能,方便学生进行核实信息,查看成绩等操作,实现一站式教务服务。系统引导式操
4、作可以让用户快速上手,更加良好、人性化的界面方面用户使用。这款软件是为了方便教师和学生的成绩管理系统,为非盈利性软件,但所要求的功能都是按质按量完成,由于开发时间有限,如有不准确的地方,希望大家多多指证。学生成绩管理系统1.系统分析1.1系统简介学生成绩管理系统,以c+为语言基础,结合数据结构、算法设计实现成绩管理功能,便于老师管理成绩,学生查询成绩。系统有三个入口,分别是管理员端,教师端,学生端,根据密码和账号不同区分学生、老师,不同身份登陆后有不同操作功能。同时系统有单独登录模块,可以隐式输入、找回、修改密码。管理员拥有大部分功能,教师可以插入、查看学生成绩,学生可以查看自己成绩。心亨4
5、心申请访问个入信息、插入、查看成绩申请访问个人信息和成绩4 心心心尸图1.1:端口联系图1.2系统功能系统有登录、管理员、教师、学生四个大模块,每个模块对应不同功能,根据不同模块分别介绍相应功能如下。2 1.2.1登录端进入界面后,需要选择自己身份,根据不同身份进入不同界面,选择后,进入登录界面,功能列表如下:图1令2:登录功能图对千登录,需要输入账号和密码,每个身份都有初始密码,系统调用那个文件判断账号和密码是否正确,如果正确可进入系统,如果三次不成功,直接退出系统。注册账号是程序开发员使用,导入数据后,管理员和教师、学生都不可使用。对千找回密码,输入账号后,系统调用文件找到相应信息并输出。
6、修改密码,首先输入原密码,然后输入新密码两次,如果两次输入不一致,提示重新输入,如果与原密码相等,提示相等请重新输入。1.2.2管理员端管理员拥有大部分功能,具有最高权限,功能菜单如下:图1.3:管理菜单图3 l)输入成绩:管理员可以把学生成绩和信息输入到系统中,包括平时成绩、考试成绩和最后成绩,然后通过文件保存,每一个学生对应文件中的一行。2)显示学生信息:可以显示部分学生关键信息,例如姓名、学号、成绩等。3)查找学生成绩:可以根据学号或者姓名进行查找,用户输入学号,系统从文件中如果找到信息会输出,如果没有会提示。4)修改学生成绩:当需要对成绩或者一些信息做出修改时,可以根据文件进行修改。5
7、)删除学生成绩:当成绩输入不当,或者学生退学需要删除时进行对信息的删除。6)插入学生成绩:当后期成绩录入不全或者其他情况需要插入学生成绩或信息的时候可以实现。7)按平均分降序排列:对学生所有成绩进行加权平均,然后算出平均分进行名次排序。8)显示不及格学生信息:对千成绩低于60分的学生进行查询,方便老师查看需要补考的名单。9)显示学生详细信息:包括学生学号、姓名、课程、课程学分、考试分数等都有输出。1.2.3教师端教师可以对学生成绩进行查询、插入、修改等部分操作,权限低千管理员,有可以音乐休闲、查看自己信息等自己独特的功能,功能菜单如下:图1.4:教师菜单图4 前五个功能继承管理员功能,可以实现
8、查、改等对学生成绩和信息的一些操作功能。l)输入教师信息:教师可以把自己的工号、姓名等基本信息输入系统。2)显示教师信息:对教师信息的显示3)修改教师信息:当发现自己信息有误时可以进行更改,每个教师有自己的密码和工号,保证教师只能看和修改自己的信息。4)音乐休闲一刻:教师独有的特色功能,当老师辛苦一天,录入成绩感到疲倦的时候,可以听一首音乐进行休息,界面如下:休丁一刻x 老师恁辛苦了听首音乐休息下吧二图1.5:音乐菜单图教师可以根据需要选择不同音乐,音乐播放有两种格式可选择。l)前面3首音乐借助第三方播放器进行播放。2)第四首可以作为背景音乐进行播放,不影响继续操作。1.2.4学生端学生具有最
9、低权限,只能查看自已成绩信息和个人信息,同时本系统为学生加入了连接教务系统的特色功能,可以进入查看信息,功能界面如下:5 图1.6:学生菜单图l)输入和显示学生个人信息:对自己学号、姓名等基本信息的输入和查看。2)学生成绩信息:学生看查看自己的成绩,因为有密码限制、只能查询自己的信息。3)连接教务系统:学生可进入教务系统进行学分审核、成绩审查等。O舷惶系统1查询服务教务系统课表吾询学生学号亘词科大校历巨涧身级成四六级外语亘涧考试安排查询多媒体教室亘词汉字区位码吾问1教务管俚-图1.7:教务系统图1.3输入输出功能各功能的输入输出如下表所示:表1:预计输入输出表功能1 输入输出6 登录成功登录账
10、号、密码登录失败退出系统找回账号密码修改原密码、新密码修改成功输入学生成绩成绩录入文件显示学生信息2 成绩信息查找成绩学号、姓名成绩信息修改成绩子严亏口修改后成绩删除成绩学号、姓名删除后成绩插入成绩学生成绩插入后成绩排序7 排序后含名次显示不及格信息8 不及格学生学生详细信息子严亏口个人信息、成绩输入教师信息工号、姓名录入文件显示教师信息工号、密码教师信息修改教师信息工号、密码修改后信息播放相应音乐、可以作为音乐休闲一刻0-4 背景或打开软件两种格式输入学生个人信息学号、姓名录入文件显示成绩学号、密码自己成绩青科大教务系统学号、密码选课、学分查询、课表查询等2.系统设计2.1系统流程图设计7
11、开始管理员端I I 教师端学生端管理员菜单操作1l 教师菜单揉作是_ 是学生菜单揉作是结束图2.1:系统流程图2.2系统功能模块图设计8 学生成绩管理系统管理员退出系统显示学生信息成绩降序排列插入学生成绩删除学生成绩修改学生成绩查找统计成绩显示统计数据输入学生数据贯学生登录个人信息查询成绩查询退出系统J退出系统音乐休闲一刻修改教师信息一显示教师信息输入教师信谦修改学生成绩二查找统计成绩显示统计数据输入学生数据目退出系统修改密码注册账号退出系统修改密码注册账号退出系统修改密码注册账号 图2.2:系统功能模块图2.3数据结构设计2.3.1课程基本信息课程信息如下:课程编号、课程名称、平时成绩、末考
12、成绩、综合成绩、学分、是否重修;编号从01开始编辑,课程名称按照教务系统课程名称进行输入。类:Course;具体声明如下:class Course 定义一个课程信息类public:课程编号string course_name;/课程名称int course_num;9 ;float regular_score;平时成绩float final score;末考成绩float average_score;综合成绩float study _score;学分string rebulid;是否重修表示如下:表2:课程信息表课程编号课程名称平时成绩末考成绩int string course num cou
13、rse name 2.3.2管理员基本信息管理员信息如下:float float regular_sc f inal_scor ore e 综合成绩学分是否重修float float string average_sc study_ rebu Ii ore score d 管理员权限最高,可以输入学生成绩、管理教师和学生信息,所以加入了课程平均分,课程数目,同时有一个数组存储课程信息。类:Admin;具体声明如下:class Admin public:int class_num;班级号码int num;学号string name;姓名float average;所有课程平均分int num_o
14、fcourse;课程数目int order;名次Course course20;课程信息数组;表示如下:表3:管理员信息表I班级号码1学号1姓名1所有课程平均1课程数目1名次1课程信赍I10 int string course_num course name 2.3.3教师基本信息教师信息如下:float regular score 分数组float float float string final_score average_sc study_ rebu I id ore score 教师除了对学生成绩的增加、查看,还有自己的信息,所以有姓名、工号、密码等,密码用来限制只能查看自己的信息。类
15、:teacher;具体声明如下:class teacher public:;int numl;工号string namel;姓名char plO;表示如下:工号int numl 2.3.4学生基本信息学生信息如下:姓名、学号、年龄、密码;表4:教师信息表姓名string namel 学生功能较少,只有自己的个人信息和登录密码。类:student;具体声明如下:class student public:11 密码char p 10 int num2;string name2;int age;char p210;表示如下:姓名,也口子亏表5:学生信息表年龄string name2 int num2
16、 int age 密码char p210 2.4菜单结构设计按照4个模块和身份选择,分为登录菜单、管理员菜单、教师菜单、学生菜单四个部分,每一个里面又有自己的子菜单,细化功能,用数字选择进入不同菜单,界面用符号进行美化。l)身份选择菜单:.:::、:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:;:、:::.:;、:.:::、::.:.:::、:-:,:I,1 I I ,、,j.:,.t _义;,、,7、,.L.,:,.上J:-:_:.;r:匝l:重::;:;:上l 一.-:,飞,.,_I,:.:,:,:.:.:.:.:;:.:.:.:;:.:.图2.3身份选择菜单2)登录端菜单
17、:逃国可,.、.、,、l;、,i卜,,1 I 一.I.,J J.J,I I,).j又1尸.,.:.上i.、I一1.,.I I,j1.J 二II i:;:;:;:;:;:;:;:囡囡图2.4登录端菜单3)管理员端菜单12 I*;*t-1-1 4,.,111,.“f,.咖.咖.咖、唱.2.、.,咖.一.,.咖.人.,.l.1l ,咖 咖 咖,.-.,一.2,.,.,.,Lr._;”:,r、1,”、,.、,、4、J.,.,.,.,.、f.4.,咖j.-.,.咖.咖咖咖咖.,.J.,咖.-,-,4-ll,li.rIJ响L蜕忡帕性一i,、,、,I1-I-七卢图2.5管理员菜单4)教师端菜单I*;*;*|
18、*,、厂,一,俨,上.,,咖咖咖L、ilJ/:JIJ.,.I 咖咖.l i.、.i.、.,.咖咖咖咖咖.咖合.,咖1l.-,亡-.l【_-1(墨i山IllIll凶IllIllII*肌殿1111lII|1,IIIII1lIIlIIIlllIIll I、._-雪眉图2.6教师菜单5)学生端菜单13 I*;*1:.、::、:;:;:;:;:;:;:;:;:;:*:,:,:.:,:,*:,.:,.:,、,:、.:;:;:*:,:,:.:,:,*:;:;:、,:.,:.*.:.六,_,I.合,,.,.心(;j 1、(1.,-i:噩*:;::、::;:;:;:;*:;:;:;:;勺*:;:;:;:;:;:
19、;:;:;:;:;:;*:;:,:.:.:、;:.:*:;:;:;:;:;:;:;:;:;:;售,圈.1.:;,-(,-,七咖J、4-=.(1-*:;:;:;::一::-:-:-:图2.7学生菜单2.5输入输出格式设计2.5.1输入格式设计表6:输入格式设计表课程编号类型课程名称int 平时成绩float 末考成绩float 综合成绩float 学分float 是否重修string 班级号码int 子严亏口int 姓名string 所有课程平均分float 课程数目int 名次int 班级号码int 课程信息数组对象数组工号int 密码Char型数组控制台14 输入时,系统提示输入相应信息,根
20、据数字选择和提示输入信息。,、,,.J.哪J.2 I,J,.卢.人,I、,.i).1.,.、,编,.-,.才2.I.,.,I.,.I 一己,4.I虚,,.l.,.、r.,.:.4 I I-11义,I.b1、.J,咖,.心、.上I_.、.j/.,_.编Jr_j11,1L.,b 1f.|.J.,,编:一、咖4上,垒.,I咖,.l 睿,I,.,、I.,4y.,._J,.;.,.c 一r丿、,:i,、.I-,.,.,咖咖j、.,4咖li1门1.I,.、fV龟、,一,;,AII,JJI.、.i_.,一,1.,合、+_J,.一入1j.、,一,咖1,咖!.,合.l.,.,J.,.,.,:.i.,-.卢-.,
21、、.、,.,.-1_ 俨j.f1_ .J俨.”.J,.,.,1二:-9t、-9 一;9.i:3 1.I、;)J义|.、.图2.8文件打开文件,把数据依次读取到文件中,每输入一个学生信息换行一次,后面根据行数读取数据。2.5.2输出格式设计每一列有相应的名称,然后每个学生成绩信息安列名排好,依次向下排列,中间有间隔设计,示例如下:文件打开文件,把数据依次读取到文件中,每输入一个学生信息换行一次,后面根据行数读取数据。控制台控制台输出相应信息。咖t!t-I咖、雹4,A|.,I t)1,-I.)I 4;_.;t)1),仁一一(l_).,:-._ _、勹、.I.),I,-,今专-、.-,.t !1 4
22、-),.-、l-i.-)IJtl一,、:了.:、一咖、咖咖-15 图2.92.6类及其继承关系|AdmmI-chssnum:tit-n um:ii t-name:s吐g-average fb at-num _of_course:int-orcler:nt-course 20Course 丘nd+liput$tusrud0)邓oil仓:end+Stat囡比!Stustud 0)-:vo ii)+Lookup 1$tu stud 0)-:voil+Mod让yCtusmdD)yoii 仕:end+D e:k:Jte Stu stud 0)-:vo廿+0 utputl$tu stud Dhon)+So
23、rtiStu s叩d0).vod 仓nd+J-isertiSru s如d D)沁i 住n d+IV ritel$tu stud 0,记n)-:voxi 丘nd+Read$tu stud O):nt)+Shou伯且!$tustud Oho让public+num 1:nt+nam e 1:str.in g+p 10:char teacher+show 1(teacher teacherd Oho廿 +xiigail(teacher teache1-d Oho id +write Yo让+num 2:int+nam e2:stmg+age:int+p2 10):char+write 0-:vo i:
24、I Stu 16 Course+course_num:int+course_name:string+regular_score:float+final_score:float+average_score:t1oat+study _score:float+rebuild:string 图2.9uml类图及继承关系图2.7文件结构设计l)整个系统所有相关信息文件存放在一个文件夹2)所使用的账号密码、学生信息读写文件采用txt文本文档格式3)C+学生成绩管理系统cpp所有函数的实现,实现系统功能2.8代码规范化设计l)使用英文单词来规范来定义一些变量和类,如:学生类,定义为Student。2)文件名
25、:头文件xxx.h程序文件XXX.cpp 存储文件XXX.txt 3)变量名:变量包含数字、字母和下划线字符,不允许使用其他字符,尽可以要使用一目了然容易理解的形式。4)作用域:对应作用域的花括号对齐,内置作用域的花括号在里边,越往外的作用域花括号越靠外。5)文件:文件流类库建立以后,用完要及时关闭。6)注释:单行注释注释多行注释注释3.系统实现实现设计中所有的类,类的成员函数、成员数据。成员函数的算法,分别实现哪些功能,17 3.1功能及算法(成员函数)3.1.1管理员类类的实现:class Admin 把对类的私有成员的处理函数全部定义为友元函数public:friend void Inp
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- c+ 课程设计 成绩管理系统 设计
限制150内