C++课程设计 设计一个排课程序.docVIP

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

荆楚理工学院 课程设计成果 学院:__ 班 级: 学生姓名: 学号: 设计地点(单位)___ 设计题目:_________ 完成日期: 年月日 指导教师评语: ______________ ____________________________ ___________________________________________________________________________________________________________________________________________________________________________ ______ 成绩(五级记分制):______ __________ 教师签名:__________ _______________1,2…,n,其中1位最高的期望值。课程也有优先级,1,2…,n,用来决定将课程分给教师的顺序,其中1时最高的优先级。设计一个程序针对某些课程给某些教师进行排课。 第二节 本次设计的基本要求 程序运行时,用户输入教师信息(姓名、教师号、工作量)、课程信息(课程名、课程号、周学时、总学时、优先级)、教师对所希望讲授课程的期望值以及教学工作量等相关信息,所有信息应保存在文件中,程序根据课程的优先级以及教师对课程的期望值进行排课。为了公平起见,程序随机分配课程,如果10门课程都有优先级1,程序以随机的顺序将这些课程分给教师,如果10位教师对某门课程的期望值为1,程序应从10位教师中随机选择一个。最后输出排课情况,即某位老师上某门课程,以及某位老师的工作量。 测试数据:程序应能实现对不少于20门课和10个教师的排课,并且使每个教师的满意度达到最大,不存在工作量不满的教师以及未分配的课等情况。 实现提示:可定义一个教师类存放教师信息,所有教师的信息可以用链表存储;定义一个课程类存放课程信息,所有课程的信息可以用链表存储;定义一个排课类进行排课,排课类可以访问课程和教师信息。 选作内容:对两个同类班级安排一学期(20周)的课程,程序应能处理某些限制,如一个老师不能同时给两个班上课。 第三节 源程序 #includeiostream #includecstdlib #includefstream #includectime #define N 10 #define M 20 #define SIZE 40 using namespace std; typedef struct tcnode { char name[20]; int ipri; }tclist,*ptclist; typedef struct node { char name[20]; char num[20]; int work_time; tclist tc[M]; char cbuf[SIZE]; struct node *next; }tlist,*ptlist; typedef struct Node { char name[20]; char num[20]; int week_time; int all_time; int priority; bool mc; //是否被选 struct Node *next; }clist,*pclist; class teacher { public: teacher(); ~teacher(); void initdata(); void save(); friend void print(teacher,ptlist); tlist* pt; }; class course { public: course(); ~course(); void initdata(); void save(); friend pclist convert(course,char * s); private: clist* pc; }; teacher::teacher() { pt=NULL; } teacher::~teacher() { ptlist p; while(pt) { p=pt; pt=pt-next; delete p; } } void teacher::initdata() { char tag;

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档