




已阅读5页,还剩23页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学生选修课选课系统目 录1 前言 .12 需求分析 .22.1 编写目的 .22.2 需求概述 .22.3 需求说明 .22.4 开发环境 .23 总体设计 .33.1 功能模块图 .33.2 流程图 .43.3 类的设计图 .54 各功能模块设计 .74.1 整体设计 .74.2 主要的功能函数设计 .75 系统调试 .86 总结与体会 .146.1 总结 .146.2 编写程序中遇到的问题及解决办法 .14参考文献 .15附录 源程序 .16须眉原作11 前言随着计算机的普及,各高校均采用计算机进行学生选课。学生选修课系统主要包含选修课管理系统及学生选课系统两部分。学生选修课系统一般需要有管理员管理选修课课程,然后学生对经过管理员操作后的选修课进行选课。选修课管理系统由管理员登录,对当前所有选修课课程进行管理操作。学生选课系统则是由学生登录,学生可以查看由管理员整理好的所有选修课,并从显示出的选修课中选择自己要选择的课程。管理员管理选修课实质是对后台选修课库中的选修课信息进行操作,可以在库中添加课程或删除课程。学生选课的实质即是先打印出后台选修课库中所有选修课信息以供选择,选择课程即是对后台学生信息库里的学生信息进行修改。22 需求分析2.1 编写目的(1)要求学生达到熟练掌握 C+语言的基本知识和技能; (2)基本掌握面向对象程序设计的基本思路和方法; (3)能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题;(4)通过编写此系统,实现选修课系统的基本功能。2.2 需求概述(1)系统中包括两个登陆身份(管理员与学生),并对应不同的功能;(2)对于管理员,此系统具有添加、删除、查看选修课等功能;(3)对于学生,此系统具有选课、查询等功能2.3 需求说明此系统可以实现学生选课,管理员管理课程的基本功能2.4 开发环境使用 Visual C+6.0 编程软件33 总体设计3.1 功能模块图(1)学生学生身份有两个功能,分别是选课与查看个人信息。如图 3.1 所示。图 3.1 学生功能模块图(2)管理员管理员可以对选修课课程进行管理。如下图所示。图 3.2 管理员功能模块图学生选课个人信息管理员查看选修课删除选修课添加选修课43.2 流程图进入系统后可以选择以学生身份或者管理员身份登录。学生登录需要输入个人的学号及姓名,成功登录后可以选课或查询个人信息。管理员的登录需要输入密码,成功登录后则可以对当前所有的选修课进行管理操作,可添加新选修课或删除已有的选修课。详细操作流程如下图所示。图 3.3 流程图选择身份或退出学生 管理员开始结束选课个人信息查看选修课删除选修课添加选修课显示全部按类型选课按学分选课显示全部按类型查询按学分查询输入学号及姓名 输入密码53.3 类的设计图(1)Course 类Course 类即选修课课程类。数据成员分别是:课程编号、课程名称、课程类型、开课时间、授课学时、实验学时、总学时以及学分。成员函 数则包含所有数据成员的 get 函数,用以获取数据成员的值,set 函数用来修改课程,print 函数则是打印课程的信息。如下图所示。Courseid: char *name: char *nature: char *date: char *shours: intahours: intzhours: intscore: doublescore: doublegetId(): char *getName(): char*getNature(): char*getDate(): char*getAhours(): intgetShours(): intgetZhours(): intgetScore(): doubleset(char *a, char *b, char *c, char *d, int e, int f, double g): voidprint(): void图 3.4 Course 类6(2)Student 类Student 类即学生类。其中包含了学生的学号、学生姓名、所选的两门 课程及两门选修课课程的总学分。setId 和 setName 是用来修改相关成员的值,getName 获取学生的姓名,print 函数用来打印学生的相关信息,个 selectCourse则是用来选课。如下图所示。Studentid: char *name: char *c1: Coursec2: Coursezscore: dounblesetId(char * a1): voidsetName(char* a1): voidgetName(): char*selectCourse_1(Course cc): voidselectCourse_2(Course cc): voidprint(): voidprint(): void图 3.5 Student 类74 各功能模块设计4.1 整体设计对于学生和选修课,我们分别定义了相应的类 Student 和类 Course,其间的关系就是学生类中有两个选修课类对象成员。而对于管理员我们并没有单独去定义类,因为管理员只是对选修课进行操作,程序中并不需要访问管理员的信息。为了方便对选修课进行管理及多位学生的登录,我们定义了一个选修课数组和学生数组。4.2 主要的功能函数设计(1)选课函数 void selectCourse(Student s110, Course c1M, int s_num1) 对当前学生对象进行操作,覆盖其选修课对象成员 c1 或 c2, 即学生的选课。(2)两种输出所需选修课函数按学分输出选修课函数 void selectScore(Course c1M)按类型输出选修课 void selectNature(Course c1M)对传递进来的选修课数组进行扫描,输出符合要求的选修课。(3)选修课排序函数 void xu(Course c1M)使用冒泡排序法对选修课数组进行编号从小到大的排序。(4)主菜单函数 void menu(Course c16, Student s110)所有菜单循环都在其中,调用其他函数来实现具体功能。85 系统调试1.系统主界面进入系统主界面后可以选择登录身份或退出程序。如图 5.1 所示。图 5.1 系统主界面2.选修课管理系统图 5.1 选择登录身份为管理员,默认密码 123,输入-1 可返回图 5.1 界面。密码输入正确后可进入管理员登录系统。如图 5.2 所示。图 5.2 选修课管理系统93.按学分查看选修课图 5.2 选择查看选修课,可以查看当前所有的选修课课程的相关信息。可以选择不同的输出方式:按学
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 机电队计件管理制度
- 村上班值班管理制度
- 村小组公章管理制度
- 村文化消防管理制度
- 村级曲艺社管理制度
- 村组三清洁管理制度
- 杜邦pha管理制度
- 校园摆渡车管理制度
- 样品受理室管理制度
- 氢碘酸使用管理制度
- 2025年高考安徽卷物理真题(解析版)
- 2025年中小学生安全知识竞赛试题及答案
- 大模型应用大模型提示词
- 新能源充电桩建设项目可行性研究报告(案例新版)
- 贵州国企招聘2025贵州省粮食储备集团有限公司招聘76人笔试参考题库附带答案详解析
- 电学计量员(高级)职业技能鉴定考试题(附答案)
- T/CHC 1007-2023硫酸软骨素钠
- 沼气工程系统安全操作管理规程(新编版)
- 成人交通安全教育
- 广东肇庆航空职业学院《电气控制技术》2023-2024学年第二学期期末试卷
- 国际宏观金融观察·2024年度报告 -英国篇
评论
0/150
提交评论