当前位置:文档之家› 第5章 详细设计(结构化)

第5章 详细设计(结构化)

程序设计基础(知识点)

第三部分程序设计基础 3.1 程序、程序设计、程序设计语言的定义 ⑴程序:计算机程序,是指为了得到某种结果而可以由计算机等具有信息处理能力的装置执行的代码化指令序列,或者可以被自动转换成代码化指令序列的符号化指令序列或者符号化语句序列。 ⑵程序设计:程序设计是给出解决特定问题程序的过程,是软件构造活动中的重要组成部分。程序设计往往以某种程序设计语言为工具,给出这种语言下的程序。程序设计过程应当包括分析、设计、编码、测试、排错等不同阶段。 ⑶程序设计语言:程序设计语言用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。程序设计语言有3个方面的因素,即语法、语义和语用。 3.2 高级语言和低级语言的概念及区别 ⑴高级语言:高级语言(High-level programming language)是高度封装了的编程语言,与低级语言相对。

它是以人类的日常语言为基础的一种编程语言,使用一般人易于接受的文字来表示(例如汉字、不规则英文或其他外语),从而使程序编写员编写更容易,亦有较高的可读性,以方便对电脑认知较浅的人亦可以大概明白其内容。 ⑵低级语言:低级语言分机器语言(二进制语言)和汇编语言(符号语言),这两种语言都是面向机器的语言,和具体机器的指令系统密切相关。机器语言用指令代码编写程序,而符号语言用指令助记符来编写程序。 ⑶区别: 高级语言:实现效率高,执行效率低,对硬件的可控性弱,目标代码大,可维护性好,可移植性好低级语言:实现效率低,执行效率高,对硬件的可控性强,目标代码小,可维护性差,可移植性差 了解知识:CPU运行的是二进制指令,所有的语言编写的程序最终都要翻译成二进制代码。越低级的语言,形式上越接近机器指令,汇编语言就是与机器指令一一对应的。而越高级的语言,一条语句对应的指令数越多,其中原因就是高级语言对底层操作进行了抽象和封装,

结构化分析和设计方法

3.1.2结构化方法的基本思想 结构化方法是“结构化分析”(Structured Analysis,SA)和“结构化设计”(Structured Design,SD)的总称,结构化方法是目前最成熟、应用最广泛的信息系统开发方法之一,他的优点是有一套严格的开发程序,各开发阶段都要求有完整的文档纪录,国内外已有许多成功开发的例子。 3.1.2.1结构化分析 1.结构化系统分析思想 结构化分析方法是由美国Yourdon公司在20世纪70年代提出的,其基本思想是将系统开发看成工程项目,有计划、有步骤地进行,是一种应用很广的开发方法,适用于分析大型信息系统。 结构化分析方法采用“自顶向下,逐层分解”的开发策略。按照这种策略,再复杂的系统也可以有条不紊的进行,只要将复杂的系统适当分层,每层的复杂程度即可降低,这就是结构化分析的特点。 2.结构化分析方法的内容 结构化分析之后获得的文档是系统分析报告,系统分析报告是由下面几个部分组成的:组织结构及其分析,现行业务流程及其分析,现有数据和数据流程及其分析,新系统地初步方案和补充材料,如开发计划等。 3.结构划分此方法的特点 结构化分析方法有以下特点 结构化分析方法简单,易于掌握和使用。 结构化分析方法将分析的结果用图形表示,如业务流程图,数据流程图等,这些图形都有一套标准图符组成,从而将分析结果简明易懂的展示在用户面前。 结构化分析的实施步骤实现分析实现环境中已存在的系统,在此基础上再构思即将开发的目标系统,从而大大降低了问题的复杂程度,符合人们认识世界、改造世界的一般规律。 4.结构化分析方法的局限 结构化分析方法是一种行之有效的方法,但也有一定的局限性。局限性可以概括成以下几个方面: 结构化分析方法要求对系统有完整确切的需求定义,而实际上这是非常困难的。

结构化程序设计方法

结构化程序设计方法 设计方法的产生 结构化程序设计由迪克斯特拉(E.W.dijkstra)在1969年提出,是以模块化设计为中心,将待开发的软件系统划分为若干个相互独立的模块,这样使完成每一个模块的工作变单纯而明确,为设计一些较大的软件打下了良好的基础。 基本要点 1.采用自顶向下,逐步求精的程序设计方法 在需求分析,概要设计中,都采用了自顶向下,逐层细化的方法。 2.使用三种基本控制结构构造程序 任何程序都可由顺序、选择、重复三种基本控制结构构造。 (1)用顺序方式对过程分解,确定各部分的执行顺序。 (2)用选择方式对过程分解,确定某个部分的执行条件。 (3)用循环方式对过程分解,确定某个部分进行重复的开始和结束的条件。

(4)对处理过程仍然模糊的部分反复使用以上分解方法,最终可将所有细节确定下来。 3. 主程序员组的组织形式指开发程序的人员组织方式应采用由一个主程序员(负责全部技术活动)、一个后备程序员(协调、支持主程序员)和一个程序管理员(负责事务性工作,如收集、记录数据,文档资料管理等)三个为核心,再加上一些专家(如通信专家、数据库专家)、其他技术人员组成小组。 设计语言 C,FORTRAN,PASCAL,Ada,BASIC 设计方法的原则 自顶向下

程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。不要一开始就过多追求众多的细节,先从最上层总目标开始设计,逐步使问题具体化。 逐步细化 对复杂问题,应设计一些子目标作为过渡,逐步细化。 模块化设计 一个复杂问题,肯定是由若干稍简单的问题构成。模块化是把程序要解决的总目标分解为子目标,再进一步分解为具体的小目标,把每一个小目标称为一个模块。 限制使用goto语句 结构化程序设计方法的起源来自对GOTO语句的认识和争论。肯定的结论是,在块和进程的非正常出口处往往需要用GOTO语句,使用GOTO语句会使程序执行效率较高;在合成程序目标时,GOTO语句往往是有用的,如返回语句用GOTO。否定的结论是,GOTO语句是有害的,是造成程序混乱的祸根,程序的质量与GOTO语句的数量呈反比,应该在所有高级程序设计语言中取消GOTO语句。取消GOTO语句后,程序易于理解、易于排错、容易维护,容易进行正确性证明。

2-1 结构化程序设计基础

《2.1 结构化程序设计基础》 1. 目标概述[3分钟] (2) 2. 回顾[5分钟] (2) 3. 课程知识点讲解 (2) 3.1. 算法[60分钟] (2) 3.2. 结构化程序设计思想[20分钟] (8) 4. 小结[2分钟] (9) 5. 考核点 (9) 6. 作业答案 (9) 7. 扩展练习 (10) 8. 学生问题汇总 (10) 9. 教学后记 (10)

本节目标 ?本节中将讲述如下主要内容: ?算法的概念 ?常用流程图符号的介绍 ?顺序结构、选择结构、循环结构的图形描述 ?结构化程序设计思想 ?通过教学使学生理解结构化程序设计思想、掌握逻辑流程图的使用。 本节重点 ?算法的概念 ?常用流程图符号的介绍 ?顺序结构、选择结构、循环结构的图形描述 ?结构化程序设计思想 本节难点 ?逻辑流程图的使用 授课课时 ?2课时 教法建议 1.目标概述 [3分钟] 本章主要讲述结构化程序设计基础概念、运用。 本节主要讲述结构化程序设计思想、逻辑流程图的使用。 2.回顾 [5分钟] 回顾上一章的相关内容。 3.课程知识点讲解 3.1.算法[60分钟] 引入: 什么是算法? 主题: 从第一章的学习中,我们已经看到编制一个程序,我们不仅要解决“做什么”的问题,更重要的是要明确指明具体的步骤,也就是“怎么做”的问题,同时还需要保证其正确性和高效性,这是程序设计方法学中“算法”要解决的问题。

在古代,人们把采用算术的方法求解未知问题的运算过程称为算法。 在近代,人们把采用科学的方法完成某项事务的执行过程称为算法。 在现代,特别是计算机诞生之后,人们把计算机解题步骤称为计算机算法。 [算法的描述] 对于算法,需要选择一种合适的表达方式进行描述,现在常用的描述工具有:自然语言、流程图、伪代码、N-S图、PAD图等。 1. 用自然语言描述算法 描述算法人们首先想到就是某种自然语言(如:汉语)。使用自然语言描述算法的优点是描述自然、灵活和多样,其缺点是易产生二义性。因此,在算法设计中应少用或不用自然语言描述算法。有时在设计初步算法时可适当采用自然语言描述,然后用其它描述工具细化算法描述。下面给出几个用自然语言描述的算法例子。 示例讲解: 示例2.1.1接受一个数并使它加1,显示其结果,用自然语言描述其过程。 示例2.1.2到图书馆借书,用自然语言描述其过程。 示例2.1.3泡一杯茶,设计并用自然语言描述其过程。 示例2.1.4计算并输出1+2+3+ … +100之和,设计并用自然语言描述其算法。 [通过示例简单讲述用自然语言描述算法的使用] 2.用流程图描述算法 流程图是采用图形的方法来描述算法的一种算法描述工具,通常称框图。流程图是目前使用较为普遍的算法描述工具,其优点是描述简洁、清晰、直观,缺点是由于转移箭头的无限制使用,影响算法的可靠性。通过规范图形符号和对转移箭头的限制使用可削弱流程图的缺点,提高算法的可靠性。由于流程图优点突出,所以至今仍是程序设计人员普遍采用的算法描述工具。本书的后续章节均将采用流程图来描述问题的解决过程,以帮助大家熟悉流程图的使用。 使用流程图描述工具,应采用比较标准的图形符号,最好采用国家或国际标准。下面我们将介绍一些常用的流程图符号。

Java结构化程序设计

. 昆明理工大学信息工程与自动化学院学生实验报告 ( 2012—2013学年 第 一 学期 ) 课程名称:Java 程序设计 开课实验室:442 2012年 11月 7 日 一、实验目的及内容 目的:掌握和巩固Java 结构化程序设计的概念、方法。 内容: 1. (使用&&、||、^运算符)编写一个程序,该程序让用户输入一个整数,然后判断该整数是否能 同时被5和6整除;是否能被5或6整除;是否能被5或6整除,但不能同时被5和6整除。 例如:在命令行模式下该程序运行可呈现如下结果(注,也可以图形界面方式实现) Enter an integer: 10 Is 10 divisible by 5 and 6? false Is 10 divisible by 5 or 6? true Is 10 divisible by 5 or 6, but not both? true 2. 编写一个程序(利用循环)计算下面式子: 3. 写一个函数,该函数返回一个数组中值最小的元素的索引值,若该数组中值最小的元素多于一 个,则返回索引最小的那个,该函数的声明如下所示,在main 函数中调用并测该函数。 public static int indexOfSmallestElement(int[] list) 二、要求 1. 给出上述程序的流程图、代码和测试结果。 100 999998...433221+++++

内容一: 流程图: .

实验代码 import java.util.Scanner; public class Class1 { public static void main(String[] args) { Scanner input=new Scanner(System.in); System.out.print("Enter an integer:"); int numble=input.nextInt(); boolean numble1=(numble%5==0)&&(numble%6==0); boolean numble2=(numble%5==0)||(numble%6==0); boolean numble3=(numble%5==0)^(numble%6==0); System.out.println("is "+numble+" divisible by 5 and 6?"+numble1); System.out.println("is "+numble+" divisible by 5 or 6?"+numble2); System.out.println("is "+numble+" divisible by 5 or 6,but not both?"+numble3); } } 运行结果: .

程序设计基础(一) (1)模拟题

[模拟] 程序设计基础(一) 一、选择题(每小题2分,共70分) 下列各题[A]、[B]、[C]、[D] 四个选项中,只有一个选项是正确的。 第1题: 结构化程序设计主要强调程序的 ______。 A.效率 B.速度 C.可读性 D.大小 参考答案:C 答案解析: 第2题: 结构化程序设计方法主要是为 ______ 服务的。 A.项目管理人员 B.程序员 C.系统分析员 D.用户 参考答案:B 答案解析: 第3题: 程序设计属于软件开发过程的 ______ 阶段。 A.分析 B.定义 C.实现 D.维护 参考答案:C 答案解析: 第4题: 信息隐蔽的概念与下述 ______ 概念直接相关。 A.软件结构定义 B.模块类型划分 C.模块独立性

D.模块耦合性 参考答案:C 答案解析: 第5题: 以下关于结构化程序的说法中,正确的是 ______。 A.结构化程序由单入口、单出口和循环3种结构组成 B.结构化程序由顺序、单入口和单出口3种结构组成 C.结构化程序由顺序、循环和goto3种结构组成 D.结构化程序由顺序、循环和分支3种结构组成 参考答案:D 答案解析: 第6题: 结构化程序设计方法特点大致可分为3点,下列选项中, ______ 不是其特点。 A.要求所有模块都使用单入口、单出口,顺序、选择和循环三种控制结构 B.由顶向下逐步求精的程序设计方法 C.采用模块化来实施具体开发 D.充分考虑模块间的相互联系 参考答案:D 答案解析: 第7题: 结构化程序设计理论认为,实现良好的程序结构要应用 ______ 的分析方法。 A.自顶向下 B.自底向上 C.面向对象 D.基于组件 参考答案:A 答案解析: 第8题: 下列各项中,不是结构化程序基本模块结构的是 ______。 A.处理单元 B.循环机制

结构化分析和设计方法

结构化分析和设计方法 3.1.2结构化方法的基本思想 结构化方法是“结构化分析”(Structured Analysis,SA)和“结构化设计”(Structured Design,SD)的总称,结构化方法是目前最成熟、应用最广泛的信息系统开 发方法之一,他的优点是有一套严格的开发程序,各开发阶段都要求有完整的文档纪录, 国内外已有许多成功开发的例子。 3.1.2.1结构化分析 1.结构化系统分析思想 结构化分析方法是由美国Yourdon公司在20世纪70年代提出的,其基本思想是将系 统开发看成工程项目,有计划、有步骤地进行,是一种应用很广的开发方法,适用于分析 大型信息系统。 结构化分析方法采用“自顶向下,逐层分解”的开发策略。按照这种策略,再复杂的 系统也可以有条不紊的进行,只要将复杂的系统适当分层,每层的复杂程度即可降低,这 就是结构化分析的特点。 2.结构化分析方法的内容 结构化分析之后获得的文档是系统分析报告,系统分析报告是由下面几个部分组成的:组织结构及其分析,现行业务流程及其分析,现有数据和数据流程及其分析,新系统地初 步方案和补充材料,如开发计划等。 3.结构划分此方法的特点 结构化分析方法有以下特点 结构化分析方法简单,易于掌握和使用。 结构化分析方法将分析的结果用图形表示,如业务流程图,数据流程图等,这些图形 都有一套标准图符组成,从而将分析结果简明易懂的展示在用户面前。 结构化分析的实施步骤实现分析实现环境中已存在的系统,在此基础上再构思即将开 发的目标系统,从而大大降低了问题的复杂程度,符合人们认识世界、改造世界的一般规律。 4.结构化分析方法的局限 结构化分析方法是一种行之有效的方法,但也有一定的局限性。局限性可以概括成以 下几个方面:

C#结构化编程-基本数据类型习题

C#结构化编程-数据类型的转换 1.以下的C#代码,用来判断两个整数是否相等: class C { static void Main(string [] args) {int A; int B; if A = B Console.Write("A = B"); }} 代码中存在的错误包括以下的几项,除了()(选择一项) a)变量A和B在使用以前,必须进行赋值 b)判断A 和B是否相等,应使用“==”符号 c)A和B是否相等的判断,应使用括号括起来 d)If下面的执行代码,应使用花括号括起来 2.在.NTE中,一些数据类型为引用类型的值为()时,表明没有引用任何对象。(选择一项) a) Empty b) null c) Nothing 3.C#中,变量var1是一个引用类型变量,则它()(选择两项) a)可以存放真正的数据 b)只存放指向真正数据的内存地址的引用 c)可以存放真正的数据,也存放指向真正数据的内存地址的引用 改变一个引用类型变量的值,可能会影响到其他值类型变量的值 4. 与C/C++不同,C#允许结构拥有(): A.仅构造函数 B.方法 C.属性 D.构造函数 5. 运行如下的C#代码段将(b)。 Int a=10; String b=”10”; Console.WriteLine(a+b)’ a) 输出: 20 b) 输出: 1010 c) 输出: 10+10 d) 编译报错,提示数据类型不匹配 6. C# 的关键字int对应哪一个.NET类型?() A. int16 B. int32 C. int64 7. 类的私有成员是否可以被继承?()

A.Yes B.No 8.代码输出(): public static void Main(string[] args){ int i = 2000;object o = i;i = 2001;int j =(int) o; Console.WriteLine("i={0},o={1}, j={2}",i,o,j);} A. i=2001,o=2000,j=2000 B. i=2001,o=2001,,j=2001 C. i=2000,o=2001,,j=2000 D. i=2001,o=2000,j=2001 9.判断下列数据类型转换的正确选项(): A.int i=0;object o1=i;object o2=(object)i; B.int i=0;object o=i;int i1=o;int i2=(object)o;int i3=(int)o; C.int i=0; long l1=i;long l2=( long)i; D.int i=0; object o1=i;long l1=( int)o1;long l2=(long)o1; 10.C#中,下面属于值类型的数据类型是() a)int[] b)ArrayList c)DateTime d)Object 11.C#中,如果没有进行显式赋值,枚举中的第一个元素值为() a)0 b)1 c)““ d)-1 12.在C#中,下列变量定义与赋值正确的是()(选两项) A int a=”12”; Bfloat a=12.5 CDouble a=12; Dstring a=12.ToString(); 13.在C#中,下列变量定义与赋值正确的是()。 a) int age = 12.5; b) string name = accp; c) double money = 100.0; d) char level =A; 14.在C#中,下列常量定义正确的是()(选择一项) a) const double PI 3.1415926

第五章结构化程序设计基础练习题

第五章结构化程序设计基础 一、填空题 1、结构化程序设计有三种基本结构,即__________、__________和__________。 2、程序文件的扩展名是__________。 3、打开程序编辑窗口,建立或修改程序的命令是__________。 4、程序编辑完毕,可使用组合键__________保存程序。 5、__________命令可以清除屏幕上或窗口中显示的内容。 6、accept只接收字符型数据,输入的__________数据不必用__________括起来。 7、input命令可以用于接收__________数据,如果输入的是__________数据,则必须用引号括起来。 8、输出命令__________表示从屏幕下一行显示结果,__________表示从当前行的当前列显示结果。 9、使用__________命令将关闭对话功能,系统不再回显结果;使用__________命令打开对话功能,程序执行每条命令时都回显运行结果。 10、将依次逐条执行程序中的语句的程序结构称为__________。 11、在分支结构中,if和__________必须配对使用,else子句必须和__________子句一起使用,不可单独使用。 12、在循环结构中,__________子句是退出循环的子句;__________子句的功能是转回到循环的开始处,重新对循环条件进行判断。它们都可以放到循环体中的__________位置。 13、__________循环在当前选定的表中移动记录指针,并对每一个满足条件的记录执行一次循环体。 14、在一个循环的循环体中又包含另一个循环语句,这种结构称为__________。 15、对于两个具有调用关系的程序,称调用程序为__________,被调用的程序为__________。 16、在子程序中,至少要有一条__________语句,以便返回到调用它的主程序。 17、在任何程序模块中都可以使用的变量称为__________;程序中未加任何说明而直接定义使用的内存变量都是__________。 18、根据变量作用域的不同,可以分为__________变量、__________变量和__________变量。 19、当私有变量和上层模块中的变量同名时,可采用__________的方法,使子句程序中的变量与上层模块中的变量同名而不同值,格式为__________。 20、子程序与自定义函数的区别在于__________必须有一个返回值,而__________则不一定有返回值。 二、选择题 1、以下哪种方式不能运行程序文件()。 A、菜单方式下的“边编译边运行”方式 B、菜单方式下的“先编译再运行”方式 C、使用命令do <文件名> D、使用命令modify command<文件名> 2、用于建立、修改、运行程序文件的VFP命令依次是()。 A、creat、modify、do B、modi comm.、modi comm、do C、creat、modify comm、run D、modi comm.、modi comm、type 3、input、accept、wait三条命令中,可以接受字符的命令()。 A、只是accept B、只有wait C、可以是accept与wait D、三者均可

1结构化程序设计基础和面向对象程序设计基础部分

1结构化程序设计基础和面向对象程序设计基础部分 一、选择题 1.面向对象程序的主要结构特点之一是()。 A)程序中的一切操作都是通过调用函数来实现的。 B)程序中的一切操作都是通过定义函数来实现的。 C)程序中的一切操作都是通过向对象发送消息来实现的。 D)程序中的一切操作都是通过定义类来实现的。 2.类和对象之间的关系是()。 A)定义和被定义的关系B)调用和被调用的关系 C)类即是对象数组D)抽象和具体的关系 3.下列是面向对象系统的特性的是()。 A)封装性B)二义性C)可重用性D)完整性 4.在下面关于面向对象的叙述中,错误的是()。 A) 每个对象在系统中都有唯一的对象标识 B) 事件作用于对象,对象识别事件并作出相应反应 C) 一个子类能够继承其父类的所有属性和方法 D) 一个父类包括其所有子类的属性和方法 5.下面关于属性、方法和事件的叙述中,错误的是()。 A) 属性用于描述对象的状态,方法用于表示对象的行为 B) 基于同一个类产生的两个对象可以分别设置自己的属性值 C) 事件代码也可以像方法一样被显式调用 D) 在新建一个表单时,可以添加新的属性、方法和事件 6.顺序执行下列命令之后,屏幕显示的结果是()。 INPUT TO xx (输入逻辑常量:.T.) ?xx .AND. xx=xx A).T. B).F. C)0 D)错误信息 7.在VFP窗口中,执行WAIT TO QW 命令后,按一次数字键“1”,再执行?TYPE(“QW”)命令的结果是()。 A)1 B)QW C)C D)N 二、程序分析题 1.读下列程序段: SET TALK OFF CLEAR a=1 DO WHILE .T. IF a>=50 EXIT ENDIF a=a+1 ENDDO ? a

第4章 结构化设计方法范文

第4章结构化设计方法 4.1 当你“编写”程序时你设计软件吗?软件设计和编码有什么不同吗? 在“编写”程序时并没有设计软件。软件设计包括概要设计和详细设计,编码是将详细设计中的过程描述转换成用程序设计语言来描述。 4.2 举出3个数据抽象的例子和可以用来操作这些数据抽象的过程抽象的一个例子。 抽象是忽略事物的细节,获取其本质特征的过程。抽象是一种重要的机制,使人们能够对复杂系统能够很好地理解、交流和推理。在软件领域,可以将抽象分为两类,即数据抽象和过程抽象。 在传统的结构化程序设计语言中,就提供了这两种抽象机制。 (1) 数据抽象:在所有的结构化程序设计语言中,用户都可以自定义抽象数据类型。如定义抽象数据类型Student(学生)、Course(课程)、ClassScoreList(班级成绩单)。 (2) 过程抽象:过程抽象也称为是基于方法的抽象。过程抽象使我们关心处理过程的名字和它能做什么,而无需知道如何完成所有实现细节。如求班级总平均分average(ClassScoreList)就是一个过程抽象。 在面向对象的程序设计语言中,抽象与封装的概念密切相关,数据抽象和相关的过程抽象被封装在类中,不同类中相似的过程抽象(方法)又可以进一步抽象,放在接口中。封装是保证事物有明确内外界限的机制。内部是受保护的,与外部事物相隔离。 4.3 应在什么时候把模块设计实现为单块集成软件?如何实现?性能是实现单块集成软件的唯一理由吗? 由于模块之间的调用降低了系统的运行速度,可能会导致满足不了用户的性能要求,这时就需要将软件设计为单块集成软件。但是在设计时,最好按照模块化的原则进行设计,只是没有显式的模块定义而已。这样的程序也具有模块化的优点。性能是实现单块集成软件的唯一理由。 4.4 是否存在一种情况:复杂问题需要较少的工作去解决?这样的情况对模块化观点有什么影响? 通过对复杂的问题进行合理分解,分解为若干个相对简单及独立的子问题,就可以用较少的工作去解决。这种情况能够较好地支持模块化的观点,每个子问题用单独的模块去解决,模块之间应该是高内聚、低耦合的,这样才能减少工作量,否则,虽然每个模块的工作简单了,但模块之间的联系很复杂,也增加了问题解决的难度和工作量。

结构化分析与设计 测试题

结构化分析与设计单元测试 一、填空题 1.数据字典是软件需求分析阶段的最重要的工具之一,其最基本的功能是()。 2.软件的面向数据流的设计方法,利用其定义的映射方法可以把数据流图变换成软件结构:在映射中,一般将数据流分为()和事务流两种。 3.组成数据流图的四个主要成分是数据的源点/终点,()、()和()。 4.数据流图和数据字典共同构成了系统的()模型,是需求规格说明书的主要组成部分。 5. 数据字典的内容包括六项:()、()、()、()、()、()。 6. 结构化设计方法中,要把数据流图转换成软件结构,若某个加工将它的输入流分离成许多发散的数据流,形成许多加工路径,并根据输入的值选择其中一个路径来执行,这种特征的DFD称为()数据流图。 二、判断题 1. 对于DFD图的划分,主要依赖设计人员的经验,一切都应根据设计人员的经验确定。 2.逻辑输入数据流是离物理输入端最远,且沿同一输入路径输入的数据流。 3.数据流图从数据传递和加工的角度,以图形的方式描述数据流从输入到输出的传输变换过程。 三、选择题 1. 关于数据流图正确的描述是()。 A.数据流图是结构化系统分析的主要工具。 B.在数据流图中,*号标识相邻的数据流只取其一。 C.加工是以数据结构或数据内容作为加工对象的。 D.数据流图的主图中必须包括全部四种基本元素。 2.程序流程图(框图)中的箭头代表( )。 A.数据流 B.控制流 C.调用关系 D.组成关系 3.从心理学角度看,对数据流程图的数据处理泡进行分解,一次分解为多少个泡为宜。() A. 3±1 B. 7±2 C. 15±1 D. 18±2 4.按软件生命周期方法设计软件的过程中,画数据流图属于下面哪个阶段的工作() A. 需求分析 B. 概要设计 C. 详细设计 D. 软件维护 四、简答题

VFP程序设计基础-结构化程序设计练习

1.在DO WHILE … ENDDO循环结构中,EXIT命令的作用是()。 ?A、退出过程,返回程序开始处 ?B、转移到DO WHILE语句行,开始下一个判断和循环 ?C、终止循环,将控制转移到本循环结构ENDDO后面 的第一条语句继续执行 ?D、终止程序执行 参考答案: C 2.在Visual FoxPro中,关于过程调用的叙述正确的是()。 ?A、当实参的数量少于形参的数量时,多余的形参初值取 逻辑假 ?B、当实参的数量多于形参的数量时,多余的实参被忽略 ?C、实参与形参的数量必须相等 ?D、上面A和B都正确 参考答案: A 3.在INPUT、ACCEPT和WAIT 三个命令中,必须要以回车键表示输入结束的命令是 ?A、ACCEPT和WAIT ?B、INPUT和WAIT

?C、INPUT、ACCEPT ?D、INPUT、ACCEPT和WAIT 参考答案: C 4.将内存变量定义为全局变量的Visual FoxPro命令是()。 ?A、LOCAL ?B、PRIVATE ?C、PUBLIC ?D、GLOBAL 参考答案: C 5.在VFP中,以下语句中( ?)是循环结构语句。 ?A、IF…ENDIF ?B、DO CASE…ENDCASE ?C、FOR…ENDFOR ?D、DO WHILE… ENDIF 参考答案: C 6.在Visual FoxPro中可以用DO命令执行的文件不包括( )。 ?A、PRG文件 ?B、MPR文件 ?C、FRX文件

?D、QPR文件 参考答案: C 7.在DO WHILE … ENDDO循环结构中,LOOP命令的作用是:()。 ?A、退出过程,返回程序开始处 ?B、转移到DO WHILE语句行,开始下一个判断和循环 ?C、终止循环,将控制转移到本循环结构ENDDO后面 的第一条语句继续执行 ?D、终止程序执行 参考答案: B 8.在VFP的命令窗口执行如下命令序列后,最后一条命令的显示结果是( )。 DIMENSION M(2,2) M(1,1)=10 M(1,2)=20 M(2,1)=30 M(2,2)=40 ? M(2) ?A、变量未定义的提示 ?B、10 ?C、20

结构化设计实验

淮海工学院计算机科学系实验报告书 课程名:《软件工程》 题目:结构化设计实验 班级:软件122 学号: 姓名:韩莹

结构化设计实验报告要求 1目的与要求: 1)系统学习和理解结构化软件工程设计阶段的基本任务、概念、原理、技术和方法; 2)掌握设计阶段各种设计工具,如、层次图、程序流程图、N-S图、PAD图、判定表(树)、伪代码语言等工具的使用方法; 3)通过理论学习和试验要逐步提高运用结构化软件工程的设计理论、技术和方法解决实际问题的综合应用和实践创新能力; 4)请借阅有关Microsoft Office Visio 系统,预习系统有关的结构化设计工具和使用方法; 5)按照实验题目要求独立完成结构化设计实验内容,严禁拷贝、抄袭他人设计成果; 6)认真书写实验报告,并于第七周周五以前提交,不得延误; 7)本次实验内容极其重要,承前启后(下一次实验使用本次实验结果),希望同学提前做好设计和实验准备工作。 2 实验内容或题目 1.针对自己第一次实验所完成的结构化分析项目(或题目),选择所绘制的数据流图,E-R 图、状态图,完成下面2、3、4、5、6步要求的结构化设计内容; 2.按照面向数据流图的结构化设计方法,并在优化所选择数据流图的基础上,导出项目的总 体设计层次图(H图);特别注意:设计过程中必须给出细化好并且加了输入输出边界的 数据流图; 3.按照详细设计阶段所学的过程设计工具,分别选择程序流程图、盒图和PAD图等设计工 具,在第2所得层次图中选择几个主要模块进行详细设计,画出相应详细设计结果图形; 4.根据E-R图所建立的数据模型进行数据库(以关系数据库模型为基准,进行数据库表及其 关系设计); 5.根据H图进行界面菜单设计(模拟菜单显示样式绘制菜单设计图),选择一个数据库表(实 体)进行界面表单(数据编辑界面)设计; 6.选择第3步中某一模块的详细设计结果,画出对应得程序流图,并计算其环形(圈)复杂 度。 3 实验步骤与源程序 数据流图:

相关主题
文本预览
相关文档 最新文档