- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
中南大学2011级数据结构与算法》实验指导书
《数据结构与算法》实验指导书
郁松
软件学院
第一部分:《数据结构》实验步骤和实验报告规范
一、《数据结构》实验步骤
随着计算机性能的提高,它所面临的软件开发的复杂度也日趋增加,因此软件开发需要系统的方法。一种常用的软件开发方法,是将软件开发过程分为分析、设计、实现和维护四个阶段。虽然数据结构课程中的实习题的复杂度远不如实际中真正的软件系统,但为了培养一个软件工作者所应具备的科学工作的方法和作风,我们制订了如下所述完成实习的5个步骤:
1、问题分析和任务定义
通常,实验题目的陈述比较简洁,或者说有模棱两可的含义。因此,在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么,限制条件是什么。注意:本步骤强调的是做什么,而不是怎么做。对问题的描述应避开算法和所涉及的数据类型,而是对所需完成的任务作出明确的回答。例如:输入数据的类型、值的范围以及输入的形式;输出数据的类型、值的范围及输出的形式;若是会话式的输入,则结束标志是什么,是否接受非法的输入,对非法输入的回答方式是什么等等。这一步还应该为调试程序准备好测试数据,包括合法的输入数据和非法形式输入的数据。
2、数据类型和系统设计
在设计这一步骤中需分逻辑设计和详细设计两步实现。逻辑设计指的是,对问题描述中涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程序模块和各抽象数据类型。详细设计则为定义相应的存储结构并写出各过程和函数的伪码算法。在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。作为逻辑设计的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的规格说明),各个主要模块的算法,并画出模块之间的调用关系图。详细设汁的结果是对数据结构和基本操作的规格说明作出进一步的求精,写出数据存储结构的类型定义,按照算法书写规范用类C语言写出过程或函数形式的算法框架。在求精的过程中,应尽量避免陷入语言细节,不必过早表述辅助数据结构和局部变量。
3、编码实现和静态检查
编码是把详细设计的结果进一步求精为程序设计语言程序。如何编写程序才能较快地完成调试是特别要注意的问题。程序的每行不要超过60个字符。每个过程(函数)体一般不要超过40行,最长不得超过60行,否则应该分割成较小的过程(函数)。要控制if语句连续嵌套的深度,分支过多时应考虑使用switch语句。对函数功能和重要变量进行注释。一定要按格式书写程序,分清每条语句的层次,对齐括号,这样便于发现语法错误。
在上机之前,应该用笔在纸上写出详细的程序编码,并做认真地静态检查。多数初学者在编好程序后处于以下两种状态之一:一种是对自己的“精心作品”的正确性确信不疑;另一种是认为上机前的任务已经完成,纠查错误是上机的工作。这两种态度是极为有害的。对一般的程序设计者而言,当编写的程序长度超过50行时,通常会含有语法错误或逻辑错误。上机动态调试决不能代替静态检查,否则调试效率将是极低的。静态检查主要有两种方法,一是用一组测试数据手工执行程序(通常应先检查单个模块);二是通过阅读或给别人讲解自己的程序而深入全面地理解程序逻辑,在这个过程中再加入一些注解。
4.上机准备和上机调试
上机准备包括以下几个方面:
熟悉C、C++、Java等语言用户手册或程序设计指导书。
熟悉机器的操作系统和语言集成环境的用户手册,尤其是最常用的命令操作,以便顺利进行上机的基本活动。
掌握调试工具,考虑调试方案,设计测试数据并手工得出正确结果。“磨刀不误砍柴工”。学生应该熟练运用高级语言的程序调试器DEBUG调试程序。
上机调试程序时要带一本高级语言教材或手册。调试最好分模块进行,自底向上,即先调试低层过程或函数。必要时可以另写一个调用驱动程序。这种表面上麻烦的工作实际上可以大大降低调试所面临的复杂性,提高调试工作效率。
在调试过程中可以不断借助DEBUG的各种功能,提高调试效率。调试中遇到的各种异常现象往往是预料不到的,此时不应“苦思冥想”,而应借助系统提供的调试工具确定错误。调试正确后,认真整理源程序及其注释,印出带有完整注释的且格式良好的源程序清单和结果。
5、总结和整理实验报告
二、《数据结构》实验报告规范
实习报告的开头应给出题目、班级、姓名、学号和完成日期,并包括以下7个内容:
1.需求分析
以无歧义的陈述说明程序设计的任务,强调的是程序要做什么?并明确规定:
输入的形式和输入值的范围;
(输出的形式;
(程序所能达到的功能;
(测试数据:包括正确的输入及其输出结果和含有错误的输入及其输出结果。
2.概要设计
说明本程序中用到的所有抽象数据类型的定义、主程序的流程以及各程序模块之间的层次(调用)关系。
3.详细设计
实现
您可能关注的文档
- 东北师大全日制教育士考研学习方法整理归纳.doc
- 东北大学2013硕研究生招生专业目录(校对版).doc
- 东北师大全日制教育士考研就业机会整理归纳.doc
- 东北师大全日制教育士考研正确选择辅导班方法整理.doc
- 东北师大全日制教育士考研学习笔记如何整理.doc
- 东北师大全日制教育士考研跨专业考生将面对的难度分析.doc
- 东北师大全日制教育士考研必备参考书分类整理.doc
- 东北师大全日制教育士考研学习笔记整理方法.doc
- 东北师大全日制教育士考研毕业就业职位研究汇总.doc
- 东北师大全日制教育士考研难度不大,考试题目难度不高.doc
- 中华英才网新员工课手册_英才工作之道V4.doc
- 中南大学2015全硕士研究生入学考试《中外舞蹈史》考试大纲 - 副本.doc
- 中南大学《电气控制PLC应用》12级试卷解答.doc
- 中南大学2014综考核选拔录取高水平大学和部分重点大学优秀应届本科毕业生攻读硕士学位研究生.doc
- 中南大学《网络教育习指导》在线考试答案题.doc
- 中南大学湘雅医学院展历程:第五章 教育教学.doc
- 中南大学网络教育本毕业论文(设计)撰写规范.docx
- 中南大学远程教育平_计算机维护(题与答案整理好).doc
- 中南对土建4个专业培养方向包括每学期的课程.doc
- 中南大学网络教育学专科毕业论文~~企业文化在企业发展中的作用.doc
最近下载
- D-Z-T 0017-2023 工程地质钻探规程(正式版).docx VIP
- D-Z-T 0382-2021 固体矿产勘查地质填图规范(正式版).docx VIP
- [病人入院护理评估表1.doc VIP
- 具有抗菌性能的中熵合金、制备方法及其应用.pdf VIP
- 探析互联网技术在小学英语教学中的应用.docx VIP
- 科技英语的特征.pptx VIP
- 湖南省2026届高三九校联盟第一次联考 化学试卷(含答案详解).pdf
- 银川乐口福食品有限公司产品研发动因及对策研究----以蛋糕为例 经管类毕业论文.docx VIP
- 2023年ISO37001反贿赂管理体系内部审核全套资料.docx VIP
- 中国文化产业和旅游业年度研究报告(2024)精华版.pdf
文档评论(0)