《软件综合实习》指导书_new 2.doc

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《软件综合实习》指导书_new 2

软件综合实习指导书 一 概述 软件综合主要内容为数据结构中相关算法的编程实现。数据结构中稍微复杂一些的算法设计中可能同时要用到多种技术和方法,如算法设计的构思方法,动态变量及链表,算法的编码,递归技术,与特定问题相关的技术等。侧重于与线性链表、二叉树和树、图结构、数组结构相关的算法的设计。其中侧重于(或若干种)基本算法或解题方法,并以此为基础进行推广提高的基础。通过实验内容的训练,突出构造性思维训练的特征,提高学生组织数据与进行编写大型程序能力。上机实习是对学生的一种全面综合训练,是与课堂听讲、自学和练习相辅相成的必不可少的一个教学环节。通常,实习题中的问题比平时的习题复杂得多,也更接近实际。实习着眼于原理与应用的结合点,使读者学会如何把书上学到的知识用于解决实际问题,培养软件工作所需要的动手能力;另一方面,能使书上的知识变“活”,起到深化理解和灵活掌握教学 内容的目的。平时的练习较偏重于如何编写功能单一的“小”算法,而实习题是软件设计的综合训练,包括问题分析,总体结构设计,用户界面设计,程序设计基本技能和技巧,以至一整套软件工作规范的训练和科学作风的培养。  每个实习题采取了统一的格式,由、、、和等5个部分组成。     旨在为读者建立问题提出的背景环境,指明问题“是什么”;   则对问题进一步求精,划出问题的边界,指出具体的参量或前提条件,并规定该题的最低限度要求;   部分旨在为检查学生上机作业提供方便,在完成实习题时应自己设计完整和严格的测试方案,当数据输入量较大时,提倡以文件形式向程序提供输入数据;   对实现中的难点及其解法思路等问题作了简要提示;   向那些尚有余力的读者提出了更严峻的挑战,同时也能开拓其他读者的思路,在完成基本要求时就力求避免就事论事的不良思想方法,尽可能寻求具有普遍意义的解法,使得程序结构合理,容易修改扩充。      随着计算机性能的提高,它所面临的软件开发的复杂度也日趋增加。然而,编制一个10000行的程序的难度绝不仅仅是一个5000行的程序的两倍,因此软件开发需要系统的方法。一种常用的软件开发方法,是将软件开发过程分为分析、设计、实现和维护四个阶段。虽然数据结构课程中的实习题的复杂度远不如(从实际问题中提出来的)一个“真正的” 软件,但为了培养一个软件工作者所应具备的科学工作的方法和作风,我们制订了如下所述 完成实习的5个步骤: 1.问题分析和任务定义   通常,实习题目的陈述比较简洁,或者说是有模棱两可的含义。因此,在进行设计之前,首先应该充分地分析和理解问题,明确问题要求做什么,限制条件是什么。注意:本步骤强调 的是做什么,而不是怎么做。对问题的描述应避开算法和所涉及的数据类型,而是对所需完 成的任务作出明确的回答。例如:输入数据的类型、值的范围以及输入的形式;输出数据的类 型、值的范围及输出的形式;若是会话式的输入,则结束标志是什么,是否接受非法的输入, 对非法输入的回答方式是什么等等。这一步还应该为调试程序准备好测试数据,包括合法的 输入数据和非法形式输入的数据。 2.数据类型和系统设计   在设计这一步骤中需分逻辑设计和详细设计两步实现。逻辑设计指的是,对问题描述中 涉及的操作对象定义相应的数据类型,并按照以数据结构为中心的原则划分模块,定义主程 序模块和各抽象数据类型;详细设计则为定义相应的存储结构并写出各过程和函数的伪码 算法。在这个过程中,要综合考虑系统功能,使得系统结构清晰、合理、简单和易于调试,抽象 数据类型的实现尽可能做到数据封装,基本操作的规格说明尽可能明确具体。作为逻辑设计 的结果,应写出每个抽象数据类型的定义(包括数据结构的描述和每个基本操作的规格说 明),各个主要模块的算法,并画出模块之间的调用关系图。详细设汁的结果是对数据结构和 基本操作的规格说明作出进一步的求精,写出数据存储结构的类型定义,按照算法书写规范函数形式的算法框架。在求精的过程中,应尽量避免陷入语言细节,不必过早表述辅助数据结构和局部变量。 3.编码实现和静态检查   编码是把详细设计的结果进一步求精为程序设计语言程序。程序的每行不要超过60个字符。每个过程(函数)体,即不计首部和规格说明部分,一般不要超过40行。最长不得超过60行,否则应该分割成较小的过程(函数)。要控制1D1语句连续嵌套的深度。其他要求参见第一篇的算法书写规范。如何编写程序才能较快地完成调试是特别要注意的问题。对于编程很熟练的读者,如果基于详细设计的伪码算法就能直接在键盘上输入程序的话,则可以不必用笔在纸上写出编码,而将这一步的工作放在上机准备之后进行,即在上机调试之前直接用键盘输入。   然而,不管你是否写出编码的程序,在上机之前,认真的静态检查却是必不可少的。多数初学者在编好程序后处于以下两种状态之一:一种是对自己

文档评论(0)

wuyuetian + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档