- 1、本文档共17页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 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;
您可能关注的文档
- 2016年华中师范大学全日制教育硕士复习经验方法(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士复习经验详谈(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研复习攻略(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研心得体会(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研攻略(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研经验(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研经验秘诀(凯程学员李y).doc
- 2016年华中师范大学全日制教育硕士考研经验须知(凯程学员李y).doc
- 2016年华师全日制教育硕士复习经验详谈(凯程学员李y).doc
- 2016年四川语文高考试题解析版(word版).doc
- 2025至2030中国婴儿拉式蚊帐行业发展现状及发展趋势与投资风险报告.docx
- 2025至2030中国半导体陶瓷靶行业项目调研及市场前景预测评估报告.docx
- 2025至2030中国果汁行业供需趋势及投资风险报告.docx
- 2025至2030中国双节距滚子链行业项目调研及市场前景预测评估报告.docx
- 2025至2030全球及中国电子电气中的cPDM行业项目调研及市场前景预测评估报告.docx
- 2025至2030工业风幕行业发展趋势分析与未来投资战略咨询研究报告.docx
- 2025至20305G技术行业发展趋势分析与未来投资战略咨询研究报告.docx
- 2025至2030钛合金行业产业运行态势及投资规划深度研究报告.docx
- 2025至2030中国冶金工程施工总承包行业运营态势与投资前景调查研究报告.docx
- 2025至2030铁路IT支出行业产业运行态势及投资规划深度研究报告.docx
文档评论(0)