上机实验要求及规范
《数据结构》课程具有比较强的理论性,同时也具有较强的可应用性和实践性,因此上
机实验是一个重要的教学环节。一般情况下学生能够重视实验环节,对于编写程序上机练习
具有一定的积极性,但是容易忽略实验的总结,忽略实验报告的撰写。对于一名大学生必须
严格训练分析总结能力、书面表达能力。需要逐步培养书写科学实验报告以及科技论文的能
力。拿到一个题目,一般不要急于编程,而是应该按照面向过程的程序设计思路(关于面向
对象的训练将在其它后继课程中进行),首先理解问题,明确给定的条件和要求解决的问题,
然后按照自顶向下,逐步求精,分而治之的策略,逐一地解决子问题。具体步骤如下:
1.问题分析与系统结构设计
充分地分析和理解问题本身,弄清要求做什么(而不是怎么做),限制条件是什么。按
照以数据结构为中心的原则划分模块,搞清数据的逻辑结构(是线性表还是树、图?),确
定数据的存储结构(是顺序结构还是链表结构?),然后设计有关操作的函数。在每个函数
模块中,要综合考虑系统功能,使系统结构清晰、合理、简单和易于调试。最后写出每个模
块的算法头和规格说明,列出模块之间的调用关系(可以用图表示),便完成了系统结构设
计。
2.详细设计和编码
详细设计是对函数(模块)的进一步求精,用伪高级语言(如类 C 语言)或自然语言
写出算法框架,这时不必确定很多结构和变量。
编码,即程序设计,是对详细设计结果的进一步求精,即用某种高级语言(如 C/C++
语言)表达出来。尽量多设一些注释语句,清晰易懂。尽量临时增加一些输出语句,便于差
错矫正,在程序成功后再删去它们。
3.上机准备
熟悉高级语言用法,如C语言。熟悉机器(即操作系统),基本的常用命令。静态检查
主要有两条路径,一是用一组测试数据手工执行程序(或分模块进行);二是通过阅读或给
别人讲解自己的程序而深入全面地理解程序逻辑,在这个过程中再加入一些注释和断言。如
果程序中逻辑概念清楚,后者将比前者有效。
4.上机调试程序
调试最好分块进行,自底向上,即先调试底层函数,必要时可以另写一个调用驱动程序,
表面上的麻烦工作可以大大降低调试时所面临的复杂性,提高工作效率。
5.整理实习报告
在上机实开始之前要充分准备实验数据,在上机实践过程中要及时记录实验数据,在
上机实践完成之后必须及时总结分析,写出实验报告。
注意:1.算法中元素类型根据实际需要选择。
2.实验题目前带*者难度较高,学生可自选;其余部分为基本内容,应尽量完成(至
少完成 80%,否则实验不合格)。