《数据结构课程设计模板简化版.docx》由会员分享,可在线阅读,更多相关《数据结构课程设计模板简化版.docx(31页珍藏版)》请在第一文库网上搜索。
1、数据构造与算法课程设计汇报题目:学院:专业班级:学生姓名:指导教师:2023年06月29日目录一、课程设计目的错误!未定义书签。二、课程设计环节错误!未定义书签。三、课程设计内容错误!未定义书签。四、课程设计汇报错误!未定义书签。五、提交材料错误!未定义书签。六、考核方式与评分原则错误!未定义书签。七、参照文献错误!未定义书签。附录1齐齐哈尔大学软件工程系课程设计阐明书(汇报)撰写规范错误!未定义书签。一、课程设计目的和规定数据构造与算法分析课程设计培养计算机专业的学生的算法程序设计能力。通过上机试验,可以培养学生程序设计的措施和技巧,提高学生编制清晰、合理、可读性好的系统程序的能力,加深对数
2、据构造课程和算法的理解。使学生更好地掌握数据构造的基本概念、基本原理、和基本算法,具有分析算法、设计算法、构造和开发较复杂算法的基本能力。规定学生能综合运用数据构造与算法分析的有关知识,培养学生上机处理某些与实际应用结合紧密的、规模较大的问题的能力,通过度析、设计、编码、调试等各环节的训练,使学生深刻理解、牢固掌握数据构造和算法设计技术,掌握分析实际问题的能力并提高C语言编程技巧,培养良好的编程风格。课程设计规定独立完毕,题目自选(参照题目见三,也可自拟),但需要老师确认(6月16日前定题),一人一题,规定程序有能采用交互式工作方式的界面进行功能的选择,只能用文献存储数据和处理数据不能使用数据
3、库。规定在教学周的第18周前完毕。二、课程设计环节伴随计算机性能的提高,它所面临的软件开发的复杂度也日趋增长。然而,编制一种IoOoO行的程序的难度绝不仅仅是一种5000行的程序的两倍,因此软件开发需要系统的措施。一种常用的软件开发措施,是将软件开发过程分为分析、设计、实现和维护四个阶段。虽然数据构造课程中的课程设计的复杂度远不如(从实际问题中提出来的)一种“真正的”软件,但为了培养一种软件工作者所应具有的科学工作的措施和作风,完毕课程设计时应有如下的5个环节:1 .问题分析和任务定义一般,课程设计题目的陈说比较简洁,或者说是有模棱两可的含义。因此,在进行设计之前,首先应当充足地分析和理解问题
4、,明确问题规定做什么,限制条件是什么。注意:本环节强调的是做什么,而不是怎么做。对问题的描述应避开算法和所涉和的数据类型,而是对所需完成的任务作出明确的回答。伊牧口:输入数据的类型、值的范固以和输入的形式;输出数据的类型、值的范困和输出的形式:若是会话式的输入,则结束标志是什么,与否接受非法的输入,对非法输入的回答方式是什么等等。这一步还应当为调试程序准备好测试数据,包括合法的输入数据和非法形式输入的数据。2 .数据类型和系统设计在设计这一环节中需分逻辑设计和详细设计两步实现。逻辑设计指的是,对问题描述中涉和的操作对象定义对应的数据类型,并按照以数据构造为中心的原则划分模块,定义主程序模块和各
5、抽象数据类型:详细设计则为定义对应的存储构造并写出各过程和函数的伪码算法。在这个过程中,要综合考虑系统功能,使得系统构造清晰、合理、简朴和易于调试,抽象数据类型的实现尽量做到数据封装,基本操作小J规格阐明尽量明确详细。作为逻辑设计的成果,应写出每个抽象数据类型的定义(包括数据构造的描述和每个基本操作的规格阐明),各个重要模块的算法,并画出模块之间的调用关系图。详细设汁的成果是对数据构造和基本操作的规格阐明作出深入的求精,写出数据存储构造的类型定义,按照算法书写规范用类C语言写出过程或函数形式的算法框架。在求精的过程中,应尽量防止陷入语言细节,不必过早表述辅助数据构造和局部变量。3 .编码实现和
6、静态检查编码是把详细设计的成果深入求精为程序设计语言程序。程序的每行不要超过60个字符。每个过程(函数)体,即不计首部和规格阐明部分,一般不要超过40行。最长不得超过60行,否则应当分割成较小的过程(函数)。要控制语句持续嵌套的深度。怎样编写程序才能较快地完毕调试是尤其要注意的问题。对于编程很纯熟的读者,假如基于详细设计的伪码算法就能直接在键盘上输入程序的话,则可以不必用笔在纸上写出编码,而将这一步的工作放在上机准备之后进行,即在上机调试之前直接用键盘输入。然而,不管你与否写出编码的程序,在上机之前,认真的静态检查却是必不可少的。多数初学者在编好程序后处在如卜.两种状态之一:一种是对自己的“精
7、心作品”的对的性确信不疑;另一种是认为上机前的任务已经完毕,纠查错误是上机的工作。这两种态度是极为有害的。实际上,非训练有素的程序设计者编写的程序长度超过50行时,很少不具有除语法错误以外的错误。上机动态调试决不能替代静态检查,否则调试效率将是极低的。静态检查重要有两种措施,一是用一组测试数据手工执行程序(一般应先分模块检查);二是通过阅读或给他人讲解自己的程序而深入全面地理解程序逻辑,在这个过程中再加入某些注解和断言。假如程序中逻辑概念清晰,后者将比前者有效。4 .上机准备和上机调试上机准备包括如下儿种方面:(1)高级语言文本(体现与编译程序顾客手册)的扩充和限制。例如,有些C编译程序限制f
8、or语句的循环控制变量为局部简朴变量等。(2)假如用C语言,要尤其注意平时常用的类C语言与原则C语言之间的细微差异。(3)熟悉机器的操作系统和语言集成环境的顾客手册,尤其是最常用的命令操作,以便顺利进行上机的基本活动。(4)掌握调试工具,考虑调试方案,设计测试数据并手工得出对的成果。“磨刀不误砍柴工“计算机各专业的学生应当可以纯熟运用高级语言的程序调试器DEBUG调试程序。上机调试程序时要带本高级语言教材或手册。调试最佳分模块进行,自底向上,即先调试低层过程或函数。必要时可以另写一种调用驱动程序。这种表面上麻烦的工作实际上可以大大减少调试所面临的复杂性,提高调试工作效率。在调试过程中可以不停借
9、助DEBUG的多种功能,提高调试效率。调试中碰到的多种异常现象往往是预料不到的,此时不应“苦思具想”,而应动手确定疑点,通过修改程序来证明它或绕过它。调试对的后,认真整顿源程序和其注释,印出带有完整注释的且格式良好的源程序清单和成果。5 .总结和整顿实习汇报注意,在实践中,有时候也许想检查自己的想法,这时可以上机尝试一下,看看自己的思绪与否可行.三、课程设计内容参照题目:1 .二叉树的应用一哈夫曼树(电文的编码和译码)2 .运动会分数记录3 .学生成绩管理系统4 .简易客房管理系统5 .其他类型管理系统的题目人事档案管理系统图书管理系统进销存货品管理系统职工工资管理系统6 .稀疏矩阵运算器7
10、.长整数的J四则运算8 .校园导游征询10.停车场管理11其他题目:(必须事先得到指导老师容许)程序常常需要输入输出,因此可以在考虑采用什么样的数据构造时,考虑怎样进行数据的输入和输出,可以把输入和输出分别实现为一种函数。实现了输入输出功能,也为后来程序的调试和测试带来以便.四、课程设计汇报课程设计汇报统一用A4纸打印,并装订成册,封面格式参见所附文档,正文格式规定参见附录1。课程设计汇报内容详细规定如下:1 .课程设计试验汇报内容总体规定1)给出问题分析过程根据自身对课程的掌握程度,充足分析和理解问题的设计规定,给出较为明确、简洁的设计思绪。2)给出数据构造描述根据要处理的问题,考虑多种也许
11、的数据构造类型,从中选择一种较为有效的措施,并写出采用的数据构造描述和其功用。3)给出对应算法设计根据问题分析的成果,并确立好所选的数据构造描述,然后写出合理的算法设计过程,尤其要注意所使用函数间的调用与被调用关系。4)给出详细程序清单根据算法的内容,用计算机语言(如C语言)编写完整的程序,并将程序在机器上反复调试,直到成果对的为止,程序规定附上详细注解.尤其要注意算法与程序的区别以和上下层模块间的接口处理。5)给出程序运行成果运用经典的测试用例,将数据输入到程序执行过程中去,记下执行过程中屏幕显示状况与对应成果。2 .详细内容规定:汇报包括如下7个内容:1)以无岐义的陈说阐明程序设计的任务,
12、强调的是程序要做什么?并明确规定:(1)输入的形式和输入值的范围;(2)输出的形式;(3)程序所能到达的功能;(4)测试数据:包括对的的输入和其输出成果和具有错误的输入和其输出成果。2)概要设计阐明本程序中用到的所有抽象数据类型的定义、主程序的流程以和各程序模块之间的层次(调用)关系。3)详细设计实现概要设计中定义的所有数据类型,对每个操作只需要写出伪码算法:对主程序和其他模块也都需要写出伪码算法(伪码算法到达的详细程度提议为:按照伪码算法可以在计算机键盘直接输入高级程序设计语言程序);画出函数和过程的调用关系图。4)调试分析内容包括:(1)调试过程中碰到的问题是怎样处理的以和对设计与实现的回
13、忆讨论和分析;(2)算法的时空分析(包括基本操作和其他算法的时间复杂度和空间复杂度的I分析)(3)改善设想;(4)经验和体会等。5)顾客使用阐明阐明怎样使用你编写的程序,详细列出每一步的操作环节。6)测试成果列出你的测试成果,包括输入和输出。这里的测试数据应当完整和严格,最佳多于需求分析中所列。7)附录带注释的源程序,假如提交程序,可以只列出程序文献名的清单。五、提交材料课程设计完毕后的下一周的周一上午,也就是2023年6月28-29日,提交如下资料并答辩:1.课程设计汇报。课程设计汇报总体上重要包括如下几种部分:1)封面2)考核方式与评分原则(见六)3)目录4)课程设计汇报正文5)使用阐明2
14、.完整H勺软件系统最终必须向指导老师提交完整U勺程序源代码(.c和.cpp以和.h为后缀的文献)、数据文献以和使用阐明文献等。源代码文献要尤其注意编程规范、代码风格,关键代码需有合理的注释,不含任何无用代码:数据文献内规定有一定数量的“真实”数据(如对于记录文献,需要有8条以上记录);使用阐明文献的第一行,需要给出设计者的学号、姓名,背面为其他阐明。课程设计项目源代码和有关数据,放到一种目录下,目录名以学号加姓名方式命名。六、考核方式与评分原则(下页单独打印)综合实践1评分表班级姓名指导教师题目:评分原则评分原则分数权重评分的根据得分AC选题10选题符合大纲规定,题目较新奇,工作量大选题基本符
15、合大纲规定,工作量适中工作态度10态度端正,能积极认真完毕各个环节的工作,不迟到早退,出勤好。可以完毕各环节基本工作,出勤很好。存储构造、算法描述20能对的选择存储构造,定义精确,算法流程图或类C语言描述的算法精确无误能对的选择存储构造,算法流程图或类C语言描述即J算法基本精确独立处理问题的能力10具有独立分析、处埋问题能力,有一定的发明性,可以独立完毕软件的设计与调试工作,程序构造清晰,逻辑严谨,功能完善。有一定的分析、处理问题能力。可以在老师指导下完毕软件的设计与调试工作,程序功能较完善。答辨问题回答20能精确回答老师提出的问题能基本精确回答老师提出的问题程序运行状况10程序运行对附、界面清晰,测试数据设计合理。程序运行对的、界面较清晰,能给出合适的测试数据。综合实践汇报20格式规范,层次清晰,设计思想明确,处理问题措施合理,体会深刻。格式较规范,设计思想基本明确,处理问题措施较合理。总分指导教师(签字):注:介于A和C之间为B级.低于C为D级和E级。按各项指标打分后,总分在90IOO为优,8089为良,7079为