基于C语言开发一种自动编排课表系统_精品.pdfVIP

基于C语言开发一种自动编排课表系统_精品.pdf

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于C语言开发一种自动编排课表系统_精品

基于 C 语言开发一种自动编排课表系统 摘 要:排课是学校教学管理中十分重要又相当复杂的管理工作之一。其 实质就是为学校所设置的课程安排时间和地点,从而使整个教学能够有计划有 秩序地进行。而通常所用的手工排课费时费力且多易出错,因此学校教务管理 对计算机自动编排课表的要求变的非常迫切。自动编排课表系统是通过将排课 问题予以简化,在一定的约束条件下,制定针对该条件的算法流程,用 C 语言 编写程序,实现计算机自动编排课表的要求。系统输入教师数据和教室的数据, 如授课科目数、每门科目的代码、不排课时段的特殊要求和教室数目等,就可 自动生成学院所使用教室的课表以及每位老师的个人的课表。该系统能在一定 程度上帮助解决相应的排课问题,提高教学管理效率。 关键词:C语言;自动排课;系统 21 世纪这个信息急速发达的时代,办公自动化也已成为现实。智能化的产品 也越来越多地应用于学习、办公、教育等领域。智能化产品不仅能够使人们工作 和学习越来越轻松,而且可以大大提高工作效率。对于学校来说,排课调课是高 校教务管理的一项日常工作,因其费时费力,手工完成多易出错,所以利用计算 机这个工具进行自动排课的想法自然 而生。 国外从 20 世纪 50 年代就有人研究排课问题,到 20 世纪 90 年代关于课表 问题的研究依然十分活跃。所用方法有整数规划、图论、分支定界技术及模拟 退化法等。国内从 20 世纪 80 年代初期开始排课问题的研究,从模拟手工排课 到构建专家系统都有尝试,采用的算法有分组优化决策算法、回溯法[5]、遗传 算法、专家系统法智能学习算法等。 在高等院校中,培养学生的主要途径是教学。在教学活动中,有一系列管 理工作,其中教学计划的实施是一个重要的教学环节。每学期管理人员都要整 理教学计划,根据教学计划下达教学任务书,然后根据教学任务书编排课表。 1 排课表工作非常复杂,即有大量繁琐的数据整理工作,更有严谨思维的脑力劳 动,还要填写大量的表格,通常手工操作要花费大量的精力,且效率低下,教 学资源也很难充分利用。因此,这是一个急需解决又非常棘手的问题,由于高 校教学单位和课程众多,且相互交叉,教师和教室有严重短缺,很难用手工制 定出准确、统一、高效、合理的课表。另一方面教学管理的信息化不可能建立 在手工操作的基础上,而理论研究和软件技术的成熟已为我们提供了计算机自 动排课的重要手段,编制出一套高效、实用、准确的排课表程序已成为可能。 加之,随着教学改革的进行,新的教育体制对课表的编排提出了更高的要求。 手工排课时信息的上通下达是极其麻烦的,而采用计算机排课,教学中信息可 以一目了然,对于优化学生的学习进程,评估每位教师对教学的贡献,领导合 理决策具有重要意义,必将会大大推进教学的良性循环。 高校排课的主要任务是把全院各班或各授课部门的课进行汇总,然后根据 教学计划和教学资源制订各院系的和各班级的专业课课表,以充分满足专业教 学的要求,并优化配置各种教学资源,使教学工作科学、高效、顺利的进行。 计算机排课问题的难点归结为多约束条件和解的不确定性。众所周知,排 课时要受到时间、空间等各种条件的限制,在一定条件下,某一课程可排在课 表的位置又不是唯一的。综合诸多因素,如何才能排出理想的课表,解决课表 的无冲突性,合理性是排课问题的关键,教务工作者有长期实践的经验,有一 套技巧和方法,而要用计算机实现自动编排课表则需要设计出一套可行的算 法,并配合人工排课的经验,设计出一套符合实际现状的实用的课表。 从实际使用的情况来看,国内外研制开发的这些软件系统在使用性上仍不 尽如人意。一方面原因是作为一个很复杂的系统,排课要想面面俱到是一件很 困难的事;另一方面每个学校由于其各自的特殊性,自动排课软件很难普遍适 用,特别是在调度的过程中,一个很小的变动要引起全部课程的大调整,着意 味着全学院课程的大变动,在实际的应用中这是很难实现的事。 1 数据结构 2 在程序当中,我们使用了两个二维数组(2D array)以及一个三维数组(3D array)。第一个二维数组(mask_array[4][5])是用来在指定某位老师时,协助 判断该位老师有哪些时段可以指定;第二

文档评论(0)

seunk + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档