课程设计用c++设计一个排课程序_第1页
课程设计用c++设计一个排课程序_第2页
课程设计用c++设计一个排课程序_第3页
课程设计用c++设计一个排课程序_第4页
课程设计用c++设计一个排课程序_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计论文题目:用C语言设计排课程序学院:专业名称:电子科技类别id:学生姓名:讲师:2013年6月目录一、项目背景21.1课题的意义3二,主体要求42.1设计功能要求42.2报告要求4三.系统总体方案:53.1方案描述53.3各功能模块:6四.源代码7V.测试数据和结果24六.概要25参考书26致谢26摘要:随着社会经济的快速发展、科学技术的全面进步和计算机产业的快速发展,基于计算机和通信技术的信息系统正处于蓬勃发展时期。随着经济文化水平的显著提高,人们对生活质量和工作环境的要求越来越高。如何通过计算机为我们完成更多的事情,进而达到办公自动化和优化日常工作的目的,已经成为一个热门话题。作为

2、计算机应用的一部分,利用计算机管理信息与人工管理相比有着无可比拟的优势,如:它搜索速度快、查找方便、可靠性高、存储容量大、保密性好、寿命长、成本低。关键词:计算机c语言程序设计排课系统1.项目背景1.1实际应用的需要近年来,随着高校办公自动化的推进,教务管理自动化被提上了议事日程。教育管理中最重要的任务之一是每学期安排课程。由于师资、教室和设备相对短缺,如何合理安排和配置,充分利用教学资源是我们必须面对的问题。然而,手工排课不仅繁重、低效,而且容易出错,难以维护。在各方面安排一个令人满意的日程是非常困难的。随着高校规模的扩大,手工排课的难度和工作量呈几何级数增长。作为高等教育信息化的一项重要工

3、作,如何构建一个开放、实用、灵活的平台是一个值得探讨的话题。其中,作为学校教育管理关键环节之一的排课系统也尤为重要。1.1主题的意义排课系统是一种教务办公软件,旨在减轻教务管理人员的工作量,实现教务管理的自动化,解决长期存在的排课问题。特别是高校的课程设置没有很好的解决办法,但是这个问题是每个学校每学期都会遇到的一个必要的行政操作。在相关理论的指导下,本文在分析以往排课软件的基础上,提出了一种高校综合排课系统的设计方法,并对一些具体问题给出了相应的解决方案。然而,由于有限的技术和经验以及大量的数据,我们很难做出一个满足所有需求的排课系统。因为它不仅要考虑课堂冲突和教师冲突,还要考虑分段上课和单

4、周、双周课时的资源利用;此外,由于高校的教学特点,我们不得不处理一些特殊的课程,如同班、分班、体育课和选修课。针对这些问题,本文在数据库设计方面做了一些探索,精心调整了架构的选择和模块的划分,也体现了菜单设计的人性化操作。该设计贴近用户需求,功能齐全,架构合理,以大量的框图模型反映了系统规划。系统实现了计算机时间、课程、教室的安排,它们之间无冲突,资源得到有效利用;这更符合学院的教学需要,减少了排课管理的工作量,节省了时间。同时,课程安排完成后,学院可以快速获取课程表信息,给教学工作带来方便。该系统界面友好,操作简单,使用方便。2.项目要求2.1设计功能要求当程序运行时,用户输入教师信息(姓名

5、、教师编号、工作课程信息(课程名称、课程编号、每周课时、总课时、优先级)、教师对他们想要教授的课程的期望、教学工作量和其他相关信息,所有这些都应保存在文件中。该计划根据课程的优先级和教师对课程的期望安排课程。为了公平起见,这个项目随机分配课程。如果所有10门课程都有优先权,程序会将这些课程随机分配给教师。如果10个老师对一门课程的期望是1,那么程序应该从10个老师中随机选择一个。最后,输出课程安排,即某个教师参加某个课程和某个教师的工作量。测试数据:该计划应能安排不少于20门课程和10名教师的课程,并最大限度地提高每位教师的满意度。没有不满意的工作量和未分配的班级的教师。2.2报告要求1.涉及

6、2.课程设计报告:3.(1)系统总体方案设计思路和主要步骤各功能模块及流程图设计代码经验和参考资料3.系统总体方案:3.1方案描述一所学校的每个老师都有一个教学工作量,老师表达了对他想教的课程的期望,1,2,n,其中1是最高期望。课程也有优先级1、2和n,这些优先级用于确定向教师分发课程的顺序,其中1是高度优先。设计一个程序为一些老师安排课程。要求:(1)当程序运行时,用户输入教师信息(姓名、教师人数、工作量)、课程信息(课程名称、课程人数、每周时数、总时数、优先级)、教师对他们想教的课程的期望、教学工作量和其他相关信息,所有这些都应保存在文件中。(二)根据课程的优先顺序和教师对课程的期望安排

7、课程。最后,输出课程安排,即某个教师参加某个课程和某个教师的工作量。(3)可以修改文档。(4)退出和进入周期可以在各种界面实现。(五)可以退出系统。(6)该计划应能为不少于20门课程和10名教师安排课程,并最大限度地提高每位教师的满意度。没有教师不满意的工作量和未分配的课程。3.2系统设计框图:3.3每个功能模块:命令对应函数功能描述1输入_教师输入数据并将其写入文件2输入_课程输入数据并将其写入文件3输入_编号输入数据并将其写入文件4安排课程安排5打印输出课程安排结果6打印帮助(_ l)帮助7打印教师(_ t)输出文件信息8打印课程(_ p)输出文件信息9打印(_ n)输出文件信息10变化修

8、改文件信息4.源代码教师h:#包括#包括班主任private:char name11;intidintwork _ loadinttotalpublic:教师();无效集_教师(char*pn,inti,intw);voidset_total(intt)total=t。char*get_name() returnnameintget_id() returnidintget_work_load() returnwork _ loadintget_total() returntotal无效打印();教师:教师()strcpy(名称,“none”);id=0;work _ load=0;总计=0;无

9、效教师:3360 set _ teacher(char * pn,inti,intw)strcpy(名称,pn);id=I;工作负荷=w。无效教师:打印() cout name :课程private:char course _ name15;intcourse _ idintweek _ hourinttotal _ hour国际号码。public:课程(无效);无效集_课程(char*pname,inti,intw,intt,intn)char*get_course_name() return course _ name ;intget_course_id() returncourse _

10、idintget_week_hour() return week _ hour ;intget_total_hour() return total _ hour ;intget_N() returnN无效打印();课程:课程(无效)strcpy(课程名称,“无”);课程id=0;week _ hour=0;total _ hour=0;N=0。空隙课程:3360 set _ course(char * pname,inti,intw,intt,intn) strcpy(课程名称,pname);课程id=I;周_小时=w;total _ hour=t;N=n。无效课程:打印()cout 课程名称:#包括#包括#包括#包括#包括“教师. h”#包含“课程. h”#包括“排列. h”#包括/使用命名空间TD;无效输入_教师(教师*t,intn,intm);无效输入_课程(课程*c,intm);(int*num,intn,int m);无效安排(int*num,教师*t,课程*c,安排*a,intn,intm);无效打印(教师*t,课程*c,安排*a,intm);无效打印_帮助();无效打印_教师();无效打印_课程();无效打印_编号();无效变更(int*n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论