1、C+ 课课 程程 设设 计计 实实 验验 报报 告告 一、一、 课题名称课题名称 教学事务管理系统 二、二、 问题陈述问题陈述 使用面向对象设计的系统分析和设计,设计出适当的数据结构,编写一个信息管 理程序,程序的功能是管理学生基本信息,要求具有添加,删除,查询,排序的功能, 并具有一定的查询功能。 三、三、 设计目标和设计任务设计目标和设计任务 新学期开学时新学生需要注册,登记注册信息。注册信息包括每个已注册学生的 班级代号、学号、姓名、注册的学期等。 每个学期开始,学生可以选课,登记选课信息。选课信息包括已注册的每个学生 所选的课程,选课仅限该生注册的学期。 每个学期考试完毕,需要成绩登记
2、。每个学生所选课程的考核成绩,以及此成绩 的类型。 所输入学生的信息如果有误,可以修改。对于退学、转学的学生,删除有关资料, 对转入的学生,可以增加其各项信息。 学生信息包括:学号、班级、院系、姓名、性别、联系电话、家庭住址等。 课程信息包括:课程代号、课程名、开课学期、学分、课时。 成绩信息包括:姓名、学号、班级、课程代号、成绩、类别(初修、补考、重修) 。 可提供的查询功能: 根据某些信息(班级、性别、专业)查询学生名单; 某门课程的选修者名单(含学号、成绩、成绩类型) ; 某个学生某个课程某学期的成绩单; 某个班级某个课程各个学生的成绩单; 某个课程选修者中不及格学生的名单; 某个课程的
3、各项信息(课程代号、学分、课时、开课学期) ; 四、四、 解题算法思想解题算法思想 程序包括 11 个对话框,主对话框上四个按钮,分别调用“注册信息” 、 “选课信 息” 、 “成绩录入”及“信息管理和查询”四个子对话框。 其中,在“注册信息”对话框内可以选择学生的注册学期,点击“确定”按钮后, 弹出“学生信息”对话框,此对话框与后面将会提到的“信息管理与查询”对话框的 子对话框之一, “学生信息”相同,二者可相互共享。在该对话框中点击“增加”按 钮,将调用“成员对话框” ,用以实现学生的注册。信息填写完整后点击“确定” ,并 可依次返回至主对话框。 接着,点击“选课信息登记” ,弹出选课信息
4、对话框,在相应输入框或下拉菜单 中输入信息后,点击所要选的课程(可多选) ,然后点“确定” ,程序可以自行判断信 息输入是否合理(选课学生是否已经注册或是否已选择同样的课程) ,如果有误,则 通过消息框提示,并可以再次输入信息;如果信息合理,则提示选课成功。 点击“返回”回到主对话框,可通过“学生成绩录入”按钮调用“成绩录入”对 话框,在此对话框中,可在输入框或下拉菜单中填写相关信息,程序同样可以自行判 断信息输入的合理性(输入的学生是否已注册或是否已选择相应课程) ,如果输入有 误,则弹出消息框提示,可以再次输入信息;如果信息合理,则成绩录入成功,新的 成绩信息会在下方的 List Cont
5、rol 控件中显示。也可以直接点击下方 List 中的原有 信息,程序会自动将该信息中的学生学号及相应课程代码填写入上方控件,方便成绩 的录入。所有成绩录入完成后,点击“完成并保存”按钮,保存已录入的信息,同时 自动返回至主对话框。 如需要查询相应信息,可点击“信息管理与查询入口” ,调用“信息管理与查询” 对话框。在这个对话框中,包含三个主要功能按钮, “学生信息” , “课程信息”和“成 绩信息” ,分别用以提供相应的查询功能。 点击“学生信息” ,进入“学生信息”对话框。在这里可以实现学生信息的查询 及管理功能。在上方控件中填写或选择相应信息后,便可以在下方的 List Control
6、控件中查看到所要的学生信息,同时选中相应条目后,可以通过右方的“删除” 、 “增 加”和“修改”按钮,实现数据的管理。而通过下方“载入”和“保存”按钮,可以 载入及保存现有数据,当然也可以载入进之前保存的文件,从而实现相同学生,不同 学期的信息查询。 返回至“信息管理与查询”对话框后,点击“课程信息”按钮,在弹出的“课程 信息”对话框中,可以查看所有的课程的基本信息,并可以通过“增加课程”按钮, 调用“增加课程”对话框,填写新课程信息,从而增加新的课程;在“课程信息”中 的控件中选择某门课程后,也可以通过“查看课程”按钮调用“查看课程”对话框, 查看到选修该课程的学生名单,包括学号,成绩等信息,勾选上方控件后可以查看不 及格学生的名单。 依次返回至“信息管理与查询对话框” ,点击“成绩信息”后,进入“成绩信息” 对话框。在这个对话框中可以在下方的 List Control 看到所有学生的成绩单,通过 上方的 Edit 控件输入各个相应的筛选条件,便可以在下方看到所有符合条件的学生 的成绩单。 依次返回至主对话框,点击“”退出程序。 五、五、 数据结构描述数据结构描述