欢迎来到天天文库
浏览记录
ID:10710375
大小:669.00 KB
页数:19页
时间:2018-07-07
《数据结构课程设计指导书》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、《数据结构A》课程设计指导书计算机与控制学院18一.目的通过本课程设计,使学生更加系统地理解和掌握数据结构的基本概念;使学生能自如地根据实际要求,设计相应的数据结构,并运用C++语言实现所设计的算法,编写较大型的程序,分析和解决实际应用问题,为后续其它专业课程的学习和应用打下良好基础。二.题目根据指导教师的具体要求,从下面题目中选择2个来完成,注意2、3、4、5这几个类型相似的管理系统的题目,只能选其中一个,8和11二者也只能选一个,不能同时选择:1.二叉树的应用-哈夫曼树(电文的编码和译码)2.运动会分数统计(必须用顺序表实现)3.
2、学生成绩管理系统(必须用链表实现)4.简易客房管理系统(必须用链表实现)5.其他类型管理系统的题目(必须用链表实现)①人事档案管理系统②图书管理系统③进销存货物管理系统④职工工资管理系统6.文章编辑7.稀疏矩阵的压缩与还原8.栈和队列的应用:表达式的求值9.约瑟夫环10.纸牌游戏11.算术表达式求值12.校园导游咨询三.任务完成形式1.完整的软件系统最终必须向指导老师提交完整的程序源代码(.c和.cpp以及.h为后缀的文件)、数据文件以及使用说明文件等。源代码文件要特别注意编程规范、代码风格,关键代码需有合理的注释,不含任何无用代码;
3、数据文件内要求有一定数量的“真实”数据(如对于记录文件,需要有5条以上记录);使用说明文件的第一行,需要给出设计者的学号、姓名,后面为其它说明。2.课程设计报告(详细要求请参考附录二)课程设计报告总体上主要包括以下几个部分:1)封面2)目录3)课程设计报告正文184)使用说明5)参考文献四.总体要求1.每道题目的程序代码总量不少于300行(其中不包括自动生成代码),有合理注释。2.课程设计报告正文字数不少于5000字,概念清楚、叙述正确、内容完整、书写规范。3.独立完成课程设计,不得抄袭他人。4.功能正确、有一定实用性。5.尽可能大量
4、使用各种C++语言程序设计技术,尤其在以下几个方面:指针及其运算、结构、指针数组、数组指针、字符数组与字符串、内存空间动态申请与释放、文件访问与操作、合理的常量与全局变量及函数接口变量定义、数据输入与数据格式检查、数据类型转换、错误处理、工程设计技术(整个系统由一个工程文件、若干个程序文件、若干头文件、甚至库文件等组成)。程序界面不做较高要求,但要考虑到用户使用的方便,有较好的交互界面。6.可以使用VC编译环境开发程序,但不允许使用现成的数据库如access,SQLServer等完成上面的课程设计题目,否则成绩评定为不及格。7.设计时
5、适当考虑程序的可维护性与可扩充性。8.提倡积极交流与讨论(同学间、bbs站点)、善于查阅资料、分析与借鉴他人编写的软件。9.认真自觉以个人为单位完成自己的任务,代码和课设报告均严禁雷同,否则成绩为不及格。验收时查看代码,并提出若干个跟程序代码有关的问题,并把问题回答情况计入总评成绩。五.工作阶段与考核方法大体上可分成五个阶段:1.资料查阅准备阶段(15%)2.分析设计阶段(35%)3.编程调试阶段(40%)4.课程设计报告书写阶段(10%)5.验收阶段考核方法:只有程序验收通过后,才能按以下方法核定本次课程设计的总成绩,因未能独立完成
6、设计(尤其是抄袭)或概念不清的同学,总成绩将核定为不及格。总成绩由以下几个部分决定:1.考勤、纪律、实验室卫生2.工作量(代码量、功能多少、难度)3.关键技术4.实用性、创新5.代码书写规范性6.程序界面、新技术引用181.课程设计报告(叙述、书写规范、字数)2.动手能力、分析问题解决问题能力六.任务具体要求1、二叉树的应用-哈夫曼树(电文的编码和译码)哈夫曼编码/译码器问题描述:设计一个哈夫曼编码/译码系统,对字符串进行编码/译码基本要求:(1)从键盘输入字符串,以回车结束;(2)根据字符串中字符出现的概率进行哈夫曼编码;)(3)并
7、输出编码结果和编码表;(4)根据编码结果和编码表还原字符串;(5)输出编码过程中构造的哈夫曼树。内容:理解二叉树的基本概念,并在读懂下面详细描述的算法的情况下,编写一个有关二叉树的简单应用程序-电文的编码和译码具体实验题目和功能要求如下:(1)电文编码:假如有一份电文中共使用5个字符:a、b、c、d、e,它们的出现频率依次为4、7、5、2、9,试画出对应的哈夫曼树(请按左子树根结点的权小于等于右子树根结点的权的次序构造),并求出每个字符的哈夫曼编码其中:得到的哈夫曼树和哈夫曼编码如下。图1要求自己编程实现若从键盘输入若干字符,同时并输
8、入它们各自出现的频率,最后能计算并在屏幕上显示出每个字符的代码。(2)电文译码:给出一段二进制代码的电文,要求根据前面构造的huffman树进行译码。在前面编码的基础上,键盘输入一段电文,则能在屏幕上显示出自动翻译好的电
此文档下载收益归作者所有