您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 市场营销 > c++课程设计-学生选修课选课系统
学生选修课选课系统目录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开发环境使用VisualC++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,inte,intf,doubleg):voidprint():void图3.4Course类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(Coursecc):voidselectCourse_2(Coursecc):voidprint():voidprint():void图3.5Student类74各功能模块设计4.1整体设计对于学生和选修课,我们分别定义了相应的类Student和类Course,其间的关系就是学生类中有两个选修课类对象成员。而对于管理员我们并没有单独去定义类,因为管理员只是对选修课进行操作,程序中并不需要访问管理员的信息。为了方便对选修课进行管理及多位学生的登录,我们定义了一个选修课数组和学生数组。4.2主要的功能函数设计(1)选课函数voidselectCourse(Students1[10],Coursec1[M],ints_num1)对当前学生对象进行操作,覆盖其选修课对象成员c1或c2,即学生的选课。(2)两种输出所需选修课函数按学分输出选修课函数voidselectScore(Coursec1[M])按类型输出选修课voidselectNature(Coursec1[M])对传递进来的选修课数组进行扫描,输出符合要求的选修课。(3)选修课排序函数voidxu(Coursec1[M])使用冒泡排序法对选修课数组进行编号从小到大的排序。(4)主菜单函数voidmenu(Coursec1[6],Students1[10])所有菜单循环都在其中,调用其他函数来实现具体功能。85系统调试1.系统主界面进入系统主界面后可以选择登录身份或退出程序。如图5.1所示。图5.1系统主界面2.选修课管理系统图5.1选择登录身份为管理员,默认密码123,输入-1可返回图5.1界面。密码输入正确后可进入管理员登录系统。如图5.2所示。图5.2选修课管理系统93.按学分查看选修课图5.2选择查看选修课,可以查看当前所有的选修课课程的相关信息。可以选择不同的输出方式:按学分查询、按类型查询、显示全部。选择按学分查询,在选择0.5,可打印当前所有课程中学分为0.5的课程信息。如图5.3所示。图5.3按学分查看选修课4.查询全部选修课查看选修课功能中可以选择显示全部,即罗列出当前所有的选修课课程信息。如图5.4所示。图5.4查询全部选修课105.管理员添加选修课图5.2选择添加选修课,可以添加一门新的选修课,然后按要求输入课程信息。如图5.5所示。图5.5管理员添加选修课6.添加后的选修课信息添加选修课后选择返回上一层,再选择显示全部选修课可以看到已新增的选修课已添加成功。如图5.6所示。图5.6添加后的选修课117.管理员删除选修课图5.2选择删除选修课。输入要删除的选修课的编号,即可删除相应的选修课。如图5.7所示。图5.7管理员删除选修课8.删除后的选修课信息删除选修课后选择返回上一层,再选择显示全部选修课可以看到已删除的选修课已删除成功。如图5.8所示。图5.8删除后的
本文标题:c++课程设计-学生选修课选课系统
链接地址:https://www.777doc.com/doc-4245740 .html