c++教师排课程序

c++教师排课程序

ID:38807935

大小:193.50 KB

页数:40页

时间:2019-06-19

c++教师排课程序_第1页
c++教师排课程序_第2页
c++教师排课程序_第3页
c++教师排课程序_第4页
c++教师排课程序_第5页
资源描述:

《c++教师排课程序》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、河南城建学院软件工程·河南城建学院HenanUniversityofUrbanConstruction《面向对象程序设计》课程设计报告学号:084412153姓名:张世斌专业:软件工程        题目:教师排课程序指导老师:周二强  苏靖枫      设计时间:第十七周     计算机科学与工程系2013 年06 月40河南城建学院软件工程目录一.设计目的2二.设计内容3三.概要设计4(一).功能模块图4(二).各个模块详细的功能描述4四.详细设计5(一).结点设计5(二).结构设计5(三).子类设计6(四).类设计6(五).算法设计6五.测试数据及运行结果8(一).正常数据测试8

2、(二).非正常数据测试11六.设计技巧及体会12七.参考文献13八.源程序1340河南城建学院软件工程一.设计目的此次课题主要是实现对教师排课信息的简易管理。首先定义两个链表,用于所有教师信息和课程信息的存储;其次再定义一个teacher类和一个course类用于存放教师信息和课程信息。最后通过函数调用,连表的使用实现教师课程的排列。而且在课程设计同时,我们应学会以下几点:(一)通过C++语言的课程设计进一步的了解和掌握C++语言的有关知识和相关语法的使用方法。(二)熟练掌握使用C++语言对一些简单常见问题进行解决,编译程序对问题进行解决。(三)通过课程设计,进一步掌握C++语言中有关

3、重要的数据结构,诸如类、链表、结构体、文件等在程序开发中的应用。(四)通过课程设计,能根据实际问题的具体情况,结合面向对象的基本理论和基本技巧,正确分析问题,并能设计出解决问题的有效算法与程序。提高程序开发能力,能运用合理的控制流编写清晰高效的程序。(五)通过课程设计,培养C++语言知识运用和自学能力,验证自己设计的算法和程序的正确性。学会有效利用基本调试方法,迅速找出程序代码中的错误并且修改,进一步提高程序设计水平。独立或合作设计和开发一个中小型系统,掌握系统研发全过程。(六)40河南城建学院软件工程通过此次课程设计发现自己在C++语言编程上的不足并进一步掌握C++语言,为以后课程打

4、下基础。二.设计内容问题描述:每位教师都有教学工作量,教师对他所希望讲授的课程表达为一个期望值,1,2…,n,其中1为最高的期望值。课程也有优先级,1,2…,n,用来决定将课程分给教师的顺序,其中1是最高的优先级。设计一个程序针对某些课程给某些教师进行排课。基本要求:程序运行时,用户输入教师信息(姓名、教师号、工作量)、课程信息(课程名、课程号、周学时、总学时、优先级)、教师对所希望讲授课程的期望值以及教学工作量等相关信息,所有信息应保存在文件中,程序根据课程的优先级以及教师对课程的期望值进行排课。为了公平起见,程序随机分配课程,如果10门课程都有优先级1,程序以随机的顺序将这些课程分

5、给教师,如果10位教师对某门课程的期望值为1,程序应从10位教师中随机选择一个。最后输出排课情况,即某位老师上某门课程,以及某位老师的工作量。测试数据:程序应能实现对不少于20门课和10个教师的排课,并且使每个教师的满意度达到最大,不存在工作量不满的教师以及未分配的课等情况。实现提示:可定义一个教师类存放教师信息,所有教师的信息可以用链表存储;定义一个课程类存放课程信息,所有课程的信息可以用链表存储;定义一个排课类进行排课,排课类可以访问课程和教师信息。选作内容:对两个同类班级安排一学期(20周)的课程,程序应能处理某些限制,如一个老师不能同时给两个班上课。40河南城建学院软件工程三.

6、概要设计主菜单(一).功能模块0退出提示按键选择操作信息载入6打印结果1教师信息2课程信息5教师排课3教师信息储存4课程信息储存是否继续退出系统信息存储40河南城建学院软件工程(二).各个模块详细的功能描述a)主菜单主菜单的主要是为客户显示本程序的主要功能及相关操作,人性化的主菜单可以让客户很容易地使用程序相关功能。本程序主菜单设计简洁,界面简单,使用者可以根据相关提示进行操作,方便快捷。b)信息载入信息载入模块主要实现教师信息载入和课程信息载入,教师信息主要包括教师姓名,教师编号,工作量及对相应课程的期望值。课程信息主要包括课程名,课程号,周学时,总学时,优先级。此模块是使用者(客户

7、)把相关信息载入数据库进行排课操作的前提,它提供了良好的交互界面,操作简单方便。c)信息保存信息保存模块主要实现教师信息和课程信息的保存功能。由于教师信息和课程信息载入量大,为以后查询方便最好存储在文件中,同时也算对数据的备份。此模块提供路径选择功能,客户可以根据自己的情况选择相应的路径存储信息文件,安全高效。d)教师排课40河南城建学院软件工程教师排课模块主要实现根据课程优先级,教师对课程的期望值大小来安排课程情况的功能。此模块考虑到不同课程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。