编辑: You—灰機 | 2013-06-10 |
12.1-2007.12.14 二零零七年十二月 哈尔滨工业大学(威海)计算机学院 《数据结构课程设计》验收及成绩评定表(项目组) 班号 项目名称 高校实验室任务安排设计 职责 学号姓名主要分工组长 插入部分和删除部分以及后期的调试 成员 程序的查询部分功能 成员 收集资料选题,程序界面设计,最后修改调试 指导教师 设计地点 设计开始日期 2007.12.1 项目完成日期 2007.12.14 文档评审成绩(共35分) 评审项目 评审内容 成绩标准 评审成绩 文档格式 文档格式是否规范;
文字是否规范;
图表是否规范;
术语是否准确 10分 文档质量 程序设计思想与整体框架是否清晰 20分 文档一致性 文档与程序是否一致
5 分 文档总体评价 总成绩 界面友好和美观性评价(共
10 分) 评审项目 评审内容成绩标准 评审成绩 实现方法 图形界面或命令行界面,美观程度 5分 实现语言 面向过程或面向对象 5分 界面总体评价 总成绩 程序功能完备性评审成绩(共
40 分) 评审项目 评审内容成绩标准 评审成绩 程序运行状况 程序是否能正常运行;
是否出现死锁;
是否遇到错误而中止运行 10分 程序正确性 对于给定的输入数据,是否能得到正确的输出结果 15分 程序与文档的一致性 程序与各种文档的内容是否一致
5 分 程序的代码量 程序代码量的大小 10分 程序总体评价 总成绩 《数据结构课程设计》验收及成绩评定表(项目组) 实现技术难易程度(共
15 分) 评审项目 评审内容成绩标准 评审成绩 难易性评价 采用的关键技术,实现方法 5分 实用性评价 采用的方法是否适合 5分 程序实现语言 采用何种语言实现 5分 总体评价 总成绩 项目综合评价 项目组总成绩 评审日期 年月日评审人签字 备注 课程设计任务书 姓名: 学号: 院(系)专业: 任务起止日期:
2007 年12月1日至2007 年12 月14 日 课程设计题目:高校实验室安排设计 设计题目背景: 我们学校物理实验室实行全天开放,学生可以根据自己的学习进度自行安排实验时间,但是每个实验有一个限定的时间, 假设近期将要做的实验可以有周一下午,周三下午,周五下午三个时间(可以根据实际情况进行调整),每个时间段做实验的学生的人数不能超过一定数目,学生可以预约实验.老师可查询全部的实验愉悦情况,也可以删除某一实验安排. 要解决的问题: 按做实验的时间分别设计队列,考虑到每个时间队列中做实验的学生人数不应超过一定数目,所以,时间队列不妨用循环队列来实现,设计一个结构类型包括学生姓名,学号,班级等成员,并用此结构类型实例化时间队列类.主函数主要提供操作菜单并响应用户的各种操作,并将操作结果及时输出. 工作量: 插入:将预约做实验的学生的信息(学号,姓名,班级)插入到合适的时间 队列中 删除:教师可以删除全部队列. 查询:教师可以随时查询某个时间队列中学生的预约情况 界面设计: 界面的美化 工作计划安排:两周课程设计第一周第一天我们一起选定函数名称,变量名称等问题.在接下来一周中我们每人根据负责的程序模块来编程实现.第二周第一到三天调试程序,四到五天写论文报告,准备回答问题. 同组设计者及分工: 数据结构课程设计报告 软硬件运行环境 Windows Xp sp2,Visual C++ 6.0 sp6 问题及难点所在 对于该实验问题,考虑到实验中的队列要三个,并且涉及到了队列的操作,所以没有用C,用结构体和函数综合解决这个问题.而采用了C++中类的特性.充分体现了类的封装性和安全性. 对问题的抽象,决定要采取的数据结构,按做实验的时间分别设计队列,考虑到每个时间队列中做实验的学生人数不应超过一定数目,所以,时间队列不妨用循环队列来实现.因为有三个队列.所以创建了模板类.实际上用类也是可以实现的.对于变成过程中出现的错误,采用了C++中的异常.对于学生信息,用结构体来储存学生信息.整个实验过程中用到了队列的为空,为满判断,队列查找,删除,插入等操作. 算法设计的思想 对实验室的学生名单采用队列的数据结构进行存储.每一个队列有一个类生成. 队列中存储由结构体表示的学生的信息.预约,查询,删除,取消预约分别对应队列操作:插入,查找,删除. 算法的流程图 //图一:将学生信息入队 图二:取得队列的首部信息 图三:删除队列 图四:程序总流程图 算法的设计与分析 为队列建立CirQueue,其类定义如下: class CirQueue { public: CirQueue() {front=rear=0;