《数据结构与算法设计》课程设计指导书.docx
- 文档编号:24228635
- 上传时间:2023-05-25
- 格式:DOCX
- 页数:13
- 大小:27.99KB
《数据结构与算法设计》课程设计指导书.docx
《《数据结构与算法设计》课程设计指导书.docx》由会员分享,可在线阅读,更多相关《《数据结构与算法设计》课程设计指导书.docx(13页珍藏版)》请在冰豆网上搜索。
《数据结构与算法设计》课程设计指导书
《数据结构与算法设计》
课程设计指导书
本课程设计是学习掌握数据结构相关知识的重要实践环节,是在课程及实验基础上进行的综合性实践教学活动。
一、课程设计目的
《数据结构与算法设计》课程设计作为独立的教学环节,是集中实践性环节系列之一,是学习完《数据结构与算法设计》课程后进行的一次全面的综合练习。
其目的在于加深对数据结构理论和基本知识的理解,掌握使用C语言结合数据结构知识来设计一个实际中小型系统的方法,综合训练学生的分析问题、设计的基本内容和方法,提高解决实际管理问题的能力,以培养学生的专项技能和职业能力。
课程设计围绕课程的整体教学目标进行,课程设计的题目具有一定的综合性和应用性,只靠个别单元的知识一般不能实现课程设计的目标,需要对课程知识进行综合运用。
要完成好课程设计,就要对课程知识进行系统学习、复习、总结、应用,达到在实践中学习知识、掌握知识、应用知识和培养能力的目的。
①通过课程设计,进一步熟悉掌握以下知识:
线性表(顺序表、单链表、单循环链表、双链表)、栈、队列(链队列、循环队列)、树、二叉树、网、哈夫曼树、二叉排序树、平衡二叉树、图、查找(顺序查找、折半查找)、排序(直接插入排序、希尔排序、冒泡排序、快速排序、简单选择排序、堆排序、基数排序、归并排序)等。
②通过课程设计,达到系统理解、综合运用课程知识的学习目标。
③通过课程设计,学会用C语言结合数据结构知识解决实际问题的方法。
④通过课程设计,掌握程序的局部测试、调试方法,建立程序系统调试、测试的基本概念和思想,学会较大程序的系统测试和调试方法。
本次课程设计主要是利用VisualC++6.0来进行编程和调试。
二、课程设计基本过程
数据结构与算法设计课程设计一般包括6个步骤,即程序的功能设计、程序的数据结构设计、程序的模块(函数)设计、函数编码及调试、程序整体调试和课程设计总结等,各个步骤都有其特定的任务。
1.程序的功能设计
功能设计是课程设计的第一个环节,其任务是根据课程设计题目的描述和要求,确定程序要实现的功能,并把这些功能划分为不同的层次,确定各层功能的上下级关系,然后绘制出分级描述的程序功能框图,必要时对所列功能进行说明。
2.程序的数据结构设计
程序的数据设计主要包括对以下各类数据进行设计:
①针对程序的功能,对程序中用到的主要数据确定数据类型,并设计出各种数据的抽象数据类型ADT。
②对程序中用到的结构体数据定义其结构体类型。
③定义程序中使用的全局变量、外部变量等。
④定义程序中通用的符号常量。
⑤确定文件的数据类型,如二进制文件、文本文件等。
3.程序的模块(函数)设计
一个综合性的程序,按其功能,需要划分出若干个模块,每个模块都要设计若干个函数来实现。
各个函数功能各异,使用的层次也不尽相同。
为了使总体设计协调有序地进行,需要在程序编码之前,对主要的函数做出预先设计,即所谓的函数设计。
程序的函数设计包括函数的功能设计和函数调用设计两个方面。
①函数的功能设计。
对应程序功能框图,确定各项功能要使用的主要函数,并进行明确描述,包括:
函数名称、函数功能、函数参数、函数返回值类型等。
②函数调用设计。
对函数的调用关系进行描述,明确说明在实现程序功能时,函数之间将发生的调用和被调用关系。
4.函数编程及调试
函数编程及调试是实现程序功能的核心阶段,需要注意以下问题:
①课程设计具有一定的综合性,其程序通常由多个函数构成,每个函数都有独立的功能,实现特定的操作。
但程序中的所有函数是一个有机的整体,都围绕实现程序的功能进行设计。
②有些函数之间有调用和被调用关系,在进行函数设计时需要注意顺序问题,有的函数先设计,有的函数后设计,而没有调用关系的函数可以并列设计。
当多人合作进行一个课程设计时,可以并列设计的函数即可由不同的设计人员承担。
③程序设计是一个循序渐进的过程。
有的函数在程序设计前的函数设计阶段就被考虑到了,而有的函数是在程序设计过程中因需要才产生的。
但无论哪一个函数,都会经历由简单,到功能完善定型的过程。
④函数设计一般以功能实现为主线,围绕程序的一个功能进行函数设计。
每一个函数完成之后,都要立即进行函数功能测试,直到确认函数能实现其功能为止。
⑤有时在测试一个主调函数时,其被调用的函数还没有完成设计,这时最简便的方法,就是把被调用函数先设计为只有一个空的“return;”语句的函数,然后进行主调函数的基本测试。
当被调用函数设计完成之后,再进行详细的测试。
⑥不同功能的函数,对磁盘文件可能有不同的使用要求,因此在进行文件操作时,打开文件的方式就可能不同。
5.整体调试
整体调试是程序设计的必要阶段,是在前期程序设计调试基础上进行的基本过程。
需要设计准备一个较大规模的数据集,按照课程设计题目的功能要求,对组装完成的程序逐项进行功能测试和调试,直至确认程序达到了设计目标为止。
6.设计总结
设计总结是课程设计的最终阶段,通过对课程设计的各个过程进行系统全面地总结,按照指导教师的具体要求,形成课程设计报告。
三、课程设计时间
数据结构与算法设计课程设计时间为两周(从周一至周日,共14日),具体安排如下:
数据库课程设计项目
时长(天)
地点
资料的收集与整理
1
待定
程序的功能设计
1
待定
程序的数据设计
2
待定
程序的(模块)函数设计
2
待定
函数编程与调试
3
待定
整体调试
2
待定
撰写设计文档
2
待定
答辩
1
待定
具体课表安排如下:
周次
星期
课节
地点
第20周
星期一
3、4
?
机房
星期二
3、4
星期三
3、4
星期四
3、4
星期五
3、4
第21周
星期一
3、4
星期二
3、4
星期三
3、4
星期四
3、4
星期五
3、4
四、课程设计的考查
由指导教师根据学生完成课程设计任务的情况(课程设计报告的质量70%和课程设计过程中的工作态度20%,系统开发情况10%)综合打分。
成绩评定实行优秀、良好、中等、及格和不及格五个等级。
优秀者人数一般不超过总人数的20%。
注意:
课程设计最后将随机抽取不少于占总数1/3的学生进行答辩。
五个等级分别如下:
优(90-100分):
按要求完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确,其中有总体设计思想的论述,有正确的流程图,程序完全实现设计方案,设计方案先进,软件可靠性好;
良(80-89分):
完成设计题目,有完整的符合标准的文档,文档有条理、文笔通顺,格式正确;有完全实现设计方案的软件,设计方案较先进;
中(70-79分):
完成设计题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案正确;
及格(60-69分):
完成设计题目,有完整的符合标准的文档,有基本实现设计方案的软件,设计方案基本正确;
不及格(0-59分):
没有完成设计题目,没有完整的符合标准的文档,软件没有基本实现设计方案,设计方案不正确。
五、课程设计报告撰写要求
课程设计报告撰写的基本要求是报告原则上不少于4000字,需在封面注明设计选题、班级、课题组成员姓名、学号及项目分工,其正文建议包括如下几个方面的内容:
1.课题(或系统)概述(现状分析,系统目标等)
2.系统分析设计部分(必需,重点)
(1)系统的功能
(2)可行性分析
(3)需求分析
(4)概要设计,要求(重点)
系统的数据设计,设计出每种数据类型的ADT写出数据词典
画出系统逻辑结构
给出系统模块划分
各功能模块的算法处理流程图及相关说明
(5)详细设计,列出核心代码,代码如果比较长,可以附录在后面
(6)数据库设计部分(非必需,如果使用了数据库,则必须给出,如果没有使用数据库,则此部分可以不要)
3.系统测试部分(必需)
根据已知的输入,预测应该输出的结果,并实际运行,对比分析,找出错误所在,并改正。
4.系统操作演示部分(必需)
(1)数据的输入操作
(2)数据的输出操作
(3)数据的分析
5.系统小结(必需)
(1)程序设计过程中遇到的问题及解决过程
(2)课程设计心得及体会
6.附源程序
六、课程设计参考题目
参考30个题目:
1.学生成绩管理系统
2.学生通讯录管理系统
3.学生档案管理系统
4.选举投票系统
5.计算器
6.走迷宫
7.排序大全
。
。
。
。
。
。
。
。
。
特别声明:
以上题目仅供参考,学生可以另选题目(这句话删除?
)
要求:
1.设计上述题目的数据结构;
2.用C语言或其他语言实现系统;
3.系统具有增加,查询,修改,删除,排序等基本功能;
4.进行简单界面设计,能够实现友好的交互;
5.具有清晰的程序流程图和数据结构的详细定义;
6.系统的各个功能模块要求用函数的形式实现;
7.完成设计任务并书写课程设计报告
七、上交材料
学生需要上交的材料主要包括:
1.软件
软件需提供源程序,并能正常运行。
注:
(1)对于程序中未能实现的部分需要加以说明。
(2)对于程序中所参考的部分代码需要加以声明,并说明出处。
2.文档(设计报告)
(1)课程设计题目
(2)设计要求
(3)数据结构设计描述
(4)各变量的定义和作用
(5)系统各模块(函数)的组成,功能,参数说明,相互调用关系
(6)各功能模块的算法处理流程图及相关说明
(7)程序设计过程中遇到的问题及解决过程
(8)课程设计心得及体会
(9)附源程序
(10)参考文献
学生应按规范撰写课程设计总结报告,并在第二周周四前交给教师,教师阅后,给报告打分,并对合格的学生,随机抽取不少于占总数1/3的学生进行答辩。
课程设计实践教学环节结束后,教师将总结报告按要求装订后送交系存档。
八、成绩评定
由指导教师根据学生完成课程设计任务的情况(课程设计报告的质量70%和课程设计过程中的工作态度20%,系统开发情况10%)综合打分。
其中,不及格者必需重修该课程设计。
九、课程设计学生守则及管理规定
1、学生在课程设计期间应遵守学校作息制度;请假需经指导教师同意,并按学校规定办理请假手续,否则以旷课论处,每天以6课时计算。
2、学生必须随时接受指导教师的检查,指导及安排的工作。
3、课程设计所使用的机器,须经指导教师同意后,方可使用。
课程设计结束后,制作成果必须交学院资料室。
4、学生使用的计算机、电子仪器或其它设备,若因责任事故造成丢失或损坏,应酌情赔偿。
若设备发生故障,应及时报告,学生不得擅自修理。
5、严格禁止学生在计算机房或实验室玩游戏,每发现一次,则课程设计成绩降低5分。
学生未经指导教师同意将私人盘片、器材带入计算机房或实验室,将予以没收。
学生也不得将计算机房和实验室中的任何设备、器材和工具带回宿舍使用,否则视为盗窃。
6、学生在实验室内必须严肃认真,不得大声喧哗,严禁吃任何食物,严禁吸烟,每日负责卫生打扫,并在离开时切断电源,关好水龙头,关紧门窗。
7、学生借阅院资料室参考书籍和资料时,必须由指导老师带领,并由指导老师签名借阅。
8、课程设计学生在停课期间必须每天到所在的实验室签到。
江西理工大学
课程设计报告书
《数据结构与算法设计》
课程设计报告书
课程名称数据结构与算法设计课程设计
设计题目学生成绩管理系统
专业班级计算机161班
学号08090115101
学生姓名
指导教师
起止日期2017年月日至月日
信息工程学院系
课程设计任务书
设计内容
1.课题(或系统)概述(现状分析,系统目标等)
2.系统分析设计部分(必需,重点)
(1)系统的功能
(2)可行性分析
(3)需求分析
(4)概要设计,要求(重点)
系统的数据设计,设计出每种数据类型的ADT写出数据词典
画出系统逻辑结构
给出系统模块划分
各功能模块的算法处理流程图及相关说明
(5)详细设计,列出核心代码,代码如果比较长,可以附录在后面
(6)数据库设计部分(非必需,如果使用了数据库,则必须给出,如果没有使用数据库,则此部分可以不要)
3.系统测试部分(必需)
根据已知的输入,预测应该输出的结果,并实际运行,对比分析,找出错误所在,并改正。
4.系统操作演示部分(必需)
(1)数据的输入操作
(2)数据的输出操作
(3)数据的分析
5.系统小结(必需)
(1)程序设计过程中遇到的问题及解决过程
(2)课程设计心得及体会
6.附源程序
设计的基本要求
1、结合该课程中所学的理论知识,按要求独立设计方案,培养学生独立分析与解决问题的能力;
2、学会查阅相关手册和资料,通过查阅手册和资料,进一步熟悉常用方法的用途和技巧,并掌握这些方法的具体含义和如何使用这些方法解决实际问题;
3、掌握C语言程序设计的规则和技巧(视具体设计题目)。
4、掌握综合性软件开发设计的基本过程(视具体设计题目)。
5、认真撰写总结报告,培养严谨的作风和科学的态度。
主要参考文献
进度计划表
成绩考核
序号
起止日期
设计内容
1
2
3
4
5
6
7
8
9
10
11
指导教师评语:
指导教师签名:
年月日
成绩评定
项目
权重
成绩
1、设计过程中勤、能力、水平、态度等方面
0.4
2、说明书书写及作品质量程度
0.3
3、答辩
0.3
总成绩
教研室审核意见:
教研室主任签字:
年月日
教学院(系)审核意见:
主任签字:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据结构与算法设计 数据结构 算法 设计 课程设计 指导书