软件工程(第五版)--习题及答案

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《软件工程》(第五版)习题参考答案
第1章
一、判断题
1、(×)软件的维护与硬件维护本质上是相同的。

2、(√)软件在运行和使用中也存在退化问题。

3、(×)软件危机的产生主要是因为程序设计人员使用了不适当的程序设计语言。

4、(√)软件同其他事物一样,有孕育、诞生、成长、成熟和衰亡的生存过程。

5、(×)文字处理软件Word属于系统软件。

应用软件
6、(√)原型是软件的一个早期可运行的版本,它反映最终系统的部分重要特性。

7、(√)软件开发过程中,一个错误发现得越晚,为改正它所付出的代价就越大。

8、(×)快速原型模型对软件开发人员的水平要求不高。

9、(√)喷泉模型适合于面向对象的软件开发。

10、(×)面向对象开发方法的主要缺点是在适应需求变化方面不够灵活。

二、选择题
1、软件是一种(C)。

A、程序
B、数据
C、逻辑产品
D、物理产品
2、软件开发方法是(A)。

A、指导软件开发的一系列规则和约定
B、软件开发的步骤
C、软件开发的技术
D、软件开发的思想
3、软件生存周期中花费最多的阶段是(D)。

A、详细设计
B、软件编码(最少)
C、软件测试
D、软件维护
4、软件工程的三要素不包括(D)。

A、工具
B、过程
C、方法
D、环境
5、在软件生存周期中,能准确地确定“软件系统必须做什么”的阶段是(D)。

A、总体设计
B、详细设计(怎么做)
C、可行性研究(能不能做)
D、需求分析
6、瀑布模型本质上是一种(A)模型。

A、线性顺序
B、顺序迭代
C、线性迭代
D、能及早见到产品的
7、瀑布模型突出的缺点是不适应(D)的变动。

A、算法
B、程序语言
C、平台
D、用户需求
8、在软件开发模型中,提出最早、应用最广泛的模型是(A)。

A、瀑布模型
B、喷泉模型
C、快速原型模型
D、螺旋模型
9、瀑布模型不适合用于(A)的软件开发。

A、需求模糊不清
B、用户不能参与开发
C、用户对计算机不了解
D、开发人员对业务知识不熟悉
10、快速原型的主要优点不包括(D)。

A、能让用户参与开发、给出反馈
B、尽早把需求分析清楚,以降低风险
C、尽早地发现问题、纠正错误
D、对软件分析设计人员的素质要求不高
11、快速原型的主要问题在于(A)。

A、缺乏支持原型开发的工具
B、要严格控制原型构造的迭代
C、终端用户对原型不能理解
D、软件的测试和文档更新困难
12、螺旋模型是一种将瀑布模型和(A)结合起来的软件开发模型。

A、增量模型
B、专家系统
C、喷泉模型
D、变换模型
13、在软件生产的程序系统时代由于软件规模扩大和和软件复杂性提高等原因导致了(A)。

A、软件危机
B、软件工程
C、程序设计革命
D、结构化程序设计
14、集成化开发环境中的环境集成机制不包括(D)。

A、数据集成
B、控制集成
C、界面集成
D、服务集成
15、软件工程的出现是由于(A)。

A、软件危机的出现
B、计算机硬件技术的发展
C、软件社会化的需要
D、计算机软件技术的发展
三、简答题
1、软件通过你自己使用计算机的经历和对计算机的认识分辨软件和程序的差别,指出区别的关键点。

答:软件包括程序、数据及其相关文档的完整集合。

其中,程序是按事先设计的功能和性能要求执行的指令序列;数据是使程序能够正确地处理信息的数据结构;文档是与程序开发、维护和使用有关的图文资料。

软件包括程序,程序只是软件的一部分。

2、简述软件危机产生的原因以及避免的方法。

答:软件危机的产生有两方面因素,一方面与软件本身的抽象性和复杂性有关;另一方面则与软件开发和维护过程中使用的技术和方法有关,这是主观原因。

为了解决软件危机,既要有技术措施(好的方法和工具),也要有组织管理措施。

(1)使用好的软件开发技术和方法。

(2)使用好的软件开发工具,提高软件生产率。

(3)有良好的组织、严密的管理,各方面人员相互配合共同完成任务。

3、简述软件工程在软件开发中的作用和意义。

答:软件工程的主要思想是强调软件开发过程中应用工程化原则的重要性。

软件工程的目标是实现软件的优质高产。

软件工程的目的是在经费的预算范围内,按期交付出用户满意的、质量合格的软件产品。

4、软件生命周期概念对软件的开发有哪些指导作用。

答:软件生命周期是软件工程的一个重要的概念。

把整个软件生命周期划分为若干个较小的阶段,每个阶段都有相对独立的任务和完成任务的步骤和方法,然后逐步完成各个阶段的任务,这有利于软件开发过程的组织和管理,从而降低了整个软件开发过程的困难程度,从而使规模庞大、结构复杂和管理复杂的软件开发变得容易控制和管理。

5、分析瀑布模型和螺旋模型的异同,比较它们的适用场合。

答:瀑布模型是线性模型,是整体开发模型,文档驱动的模型,每一阶段必须完成指定的文档,需求明确的中、小型软件开发,不适宜需求模糊或多变的应用软件开发;螺旋模型是典型迭代模型,是风险驱动模型,可用于面向对象开发,适宜风险较大的大型软件开发。

第2章
一、选择题
1、系统流程图是一种传统工具,用于描绘(D)。

A、逻辑模型
B、程序结构
C、体系结构
D、物理系统
2、软件可行性研究的目的是(C)。

A、证明软件开发项目可行
B、证明软件开发项目不可行
C、阐述软件开发项目值得或不值得做
D、为了确定软件开发项目要不要做
3、技术可行性研究要解决的问题是(A)。

A、从技术方面说明项目是否可行
B、从技术上定义项目要解决的问题
C、给出项目开发可行的技术路线
D、给出精简的项目需求设计报告
4、可行性研究的步骤首先是(A)。

A、确定项目目标,即对要解决的问题进行定义
B、研究项目要求
C、对项目目标进行可行性分析
D、给出可行的解决方案
5、可行性研究的任务不包括(D)。

A、技术可行性
B、经济可行性
C、法律可行性
D、政治可行性
6、系统流程图是描述(A)的工具。

A、物理系统
B、逻辑系统
C、体系系统
D、程序系统
7、可行性研究实质上是要进行一次(A)需求分析,设计过程。

A、简化、压缩的
B、详细的
C、彻底的
D、深入的
8D)。

A B C D
二、简答题
1、软件开发的早期,为什么要进行可行性研究目标的可行性研究有几个方面
答:许多软件开发问题都不能在预期的时间范围内或资源限制下得到解决。

如果开发人员没有尽早停止没有可行解决方案的开发项目,就会造成时间、资金、人力、物力的浪费。

为了降低软件开发失败的可能性,需要进行软件可行性研究。

可行性研究要从经济可行性、技术可行性、运行可行性和法律可行性四方面进行。

2、简述可行性研究的步骤。

答:(1)审核系统的规模和目标;(2)分析研究现行系统;(3)设计新系统的高层逻辑模型;(4)获得并比较可行的方案;(5)撰写可行性研究报告。

3、某航空公司为了方便旅客,拟开发一个机票预订系统。

将旅客的信息(姓名、性别、工作单位、身份证号、旅行时间、旅行目的地等)输入该系统后,系统自动为旅客安排航班。

打印出取票通知和票务账单。

旅客可在航班的前一天凭取票通知和票务账单交款取票。

系统校对无误后即打印出机票给旅客。

要求:
(1)提出问题定义;
(2)分析此系统的可行性;
(3)画出系统流程图。

答:(1)问题定义:航运公司机票预订系统问题定义
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - -
系统目标和范围说明书
1.项目名称:X航运公司机票预订系统。

2.背景:目前,由旅客人工到航运公司排队购票,费时、费力、管理工作量大、手续繁琐效率低,制约了公司业务的发展。

3.项目目标:建立一个网络化的机票预订系统。

4.项目范围:软件开发费用不超过X万元。

5.初步设想:建议在系统中完成安排航班、打印取票通知、打印票务账单、打印机票等主要功能。

6.可行性研究:建议进行大约X周的可行性研究,研究费用不超过X元。

- - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - - - -- - - - - - - - - - - - - - - - - -
(2)可行性分析
技术可行性:使用现有的技术能够实现此系统,在现有资源(包括硬件资源、软件资源、技术人员的技术水平和已有的工作基础)条件下,技术风险不大,项目可以实现。

经济可行性:此系统能够方便旅客订票,具有一定的经济效益和社会效益。

法律可行性:此项目开发要符合航运系统相关要求。

操作可行性:现有制度、人员素质、操作方式可行。

(3)系统流程图
第3章
一、判断题
1、(√)软件需求分析阶段要确定软件系统要“做什么”。

2、(×)软件需求规格说明书可作为可行性研究的依据。

3、(√)需求分析员可以参加最后的需求评审工作。

4、(×)画数据流图时可以加少量的控制流,使加工之间有时序的关系。

5、(√)结构化分析模型的核心是数据词典。

6、(×)在数据流图中,带有箭头的线段表示的是控制流。

数据流
7、(×)在软件生产过程中,需求信息的来源是项目经理。

用户
8、(√)需求分析阶段的任务是确定软件的功能。

做什么
二、选择题
1、需求分析最终结果是产生(B)。

A、项目开发计划
B、需求规格说明书
C、设计说明书
D、可行性分析报告
2、数据流图(DFD)是(A)方法中用于表示系统的逻辑模型的一种图形工具。

A、SA
B、SD
C、SP
D、SC
3、需求规格说明书的作用不包括(C)。

A、软件验收的依据
B、用户与开发人员对软件要做什么的共同理解
C、软件可行性研究的依据
D、软件设计的依据
4、数据词典是用来定义(D)中的各个成分的具体含义。

A、流程图
B、功能结构图
C、结构图
D、数据流图
5、结构化分析方法(SA)是一种面向(B)的分析方法。

A、数据结构
B、数据流
C、结构化数据系统
D、对象
6、在数据词典中,以下哪一项表示允许重复0至任意次(A)。

A、{ }
B、0{ }
C、0{ }n
D、{ }n
7、以下数据流图符号中哪一个表示加工(B)。

A B、C、D、
8、软件开发的需求活动,其主要任务是(D)。

A、给出软件解决方案
B、给出系统模块结构
C、定义模块算法
D、定义需求并建立系统模型
9、结构化分析的核心是(A)。

A、自顶向下的分解
B、用DFD建模
C、用DD描述数据需求
D、自底向上的抽象
10、需求分析的任务是(A)。

A、正确说明让软件“做什么”
B、用DFD建模
C、用DD建立数学模型
D、给出需求规格说明书
11、对于分层的DFD,父图与子图的平衡是指(B)。

A、父图与子图的输入输出数据流必须相同
B、子图必须继承父图的输入与输出流
C、父图与子图相应的输入输出数据流名字保持一致
D、子图可以自己的输入输出数据流
12、DFD的每个加工都必须有(A)。

A、一个输入和输出数据流
B、一个输入数据流
C、一个输出数据流
D、一个输入或输出数据流
13、需求分析是分析员经了解用户的要求,认真细致地调研、分析,最终建立目标系统的逻辑模型并写出(B)的过程。

A、模块说明书
B、软件规格说明书
C、项目开发计划
D、合同文档
14、结构化分析方法是以数据流图、(D)和加工说明等描述工具,即用直观的图和简洁的语言来描述软件系统模型。

A、DFD图
B、PAD图
C、IPO图
D、DD
15、软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B)。

A、阶段性报告
B、需求评估
C、总结
D、都不正确
16、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。

下面图符名称标识的图符不属于数据流图合法图符的是(A)。

A、控制流
B、加工
C、数据存储
D、源点和终点
17、DFD用于描述系统的(D)。

A、数据结构
B、控制流程
C、基本加工
D、软件功能
18、数据词典不包括的条目是(C)。

A、数据项
B、数据流
C、数据类型
D、数据加工
19、软件需求分析一般应确定的是用户对软件的(D)。

A、功能需求
B、非功能需求
C、性能需求
D、功能需求和非功能需求
20、在数据流图中,有名字和方向的成分是(B)。

A、信息流
B、数据流
C、控制流
D、信号流
三、简答题
1、需求分析的任务是什么怎样理解“做什么”和“怎么做”
答:需求分析的基本任务是要准确地理解旧系统、定义新系统的目标,为了满足用户需要,回答“系统必须做什么”的问题,即确定系统必须完成哪些工作,对新系统提出完整、准确、清晰、具体的要求。

具体任务是:明确问题定义、导出软件的逻辑模型、编写软件需求规格说明书。

“做什么”,即深入描述软件的功能和性能,确定软件设计的限制和软件与其他系统元素的接口细节,定义软件的其他有效性需求。

“怎么做”,即着手软件需求的实现:用比较抽象概括的方式确定目标系统如何完成预定的任务,确定系统的物理模型。

2、怎样建立目标系统的逻辑模型
答:建立目标系统逻辑模型的一般过程:
(1)由当前物理系统导出当前系统物理模型;
(2)由当前系统物理模型,导出当前系统逻辑模型;
(3)参考当前系统逻辑模型,设想出新系统逻辑模型。

3、数据流图的作用是什么它有哪些基本成分
答:数据流图是用于表示系统逻辑模型的一种工具。

它从数据传递和加工的角度,以图形的方式描述数据在系统中流动和处理过程。

它表示了系统内部信息的流向以及系统的逻辑处理功能。

数据流图的主要成分有四种:数据流、数据存储、加工、数据流的源点和终点。

4、数据词典的作用是什么它包括哪些内容
答:数据词典是数据的集合,它对数据流图中的各个元素作完整的定义和说明,是数据流图的补充工具。

数据流图和数据词典共同构成系统的逻辑模型,两者缺一不可。

其内容包括:数据流、数据项、数据结构、数据存储、加工逻辑、外部实体6类元素。

四、应用题
1、用SA方法对“学生档案管理系统”进行分析,画出DFD图,并建立相应的数据词典。

解:“学生管理系统”的顶层图和0层图。

顶层图:
成绩库
部分数据词典:
学生档案={学号+姓名+性别+年龄+专业+班级}
成绩库=学号+课程号+分数
课程库=课程号+课程名+学分
学生信息=学号+姓名+性别+年龄+专业+班级
考试成绩=学号+课程号+分数
学号=”00001” (99999)
姓名=2{汉字}4
专业=”01”...”99” 注:专业代号2位数字
班级=”01”...”99” 注:班级代号2位数字
学分=0..99
2、某录取统分子系统有如下功能:
(1)计算标准分:根据考生原始分计算出标准分,并将其存入考生分数文件。

(2)计算录取线分:根据标准分、招生计划文件中的招生人数,计算录取线分数,并存入录取线文件。

试根据要求画出该子系统的数据流程图。

解:数据流图如下:
考生分数招生计划文件
录取线文件
3、某考务中心准备开发一个考务管理系统,其需求如下:
(1)考生填写考试报名表,经检查合格后在系统中登记注册,并发给学生准考证。

(2)学生按照准考证要求进入考场考试。

考试完后将试卷交给阅卷站。

(3)阅卷站阅卷后把成绩表(包括每个考试科目、每个考生的分项分数)交给本系统并输入计算机。

(4)考试中心负责管理成绩评定标准,并将其交给阅卷站。

(5)系统把考试成绩通知考生,把考试成绩的统计结果交给考试中心。

(6)系统向考生提供按准考证号、考生姓名的考生成绩查询,将按科目的历年考试成绩统计分析和评分标准提供给考试中心。

(7)考生对考试成绩质疑时,系统根据准考证号、姓名可以查询考生某科目的各分项成绩,必要时可查阅阅卷站的试卷。

(8)系统保存并可查询历年每门科目的评分标准。

(9)根据考试成绩统计系统可以向考试中心提供试题难度分析。

请画出系统的数据流程图(顶层图和0层图)。

解:顶层图:
顶层图
0层图:
0层图
4、某单位人事部门拟对职工工作进行调整,细则如下:
年龄满40岁以上人员,初中或高中文化,若是男性当修理工,若是女性当清洁工;大专文化当技术员。

年龄25岁至40岁,初中或高中文化,若是男性钳工,若是女性当车工;大专文化当技术员。

年龄不满25岁,初中文化脱产学习,高中文化当电工;大专文化当技术员。

请根据以上叙述运用三种加工逻辑说明写出它们的逻辑组合的关系。

解:判定表如下:
设:性别: 男:M 女:F
学历: 初中:A 高中B 大专:C
最简化:
判定树:
结构化语言:
IF 年龄>40 THEN SWITCH (学历) {CASE :“初中”
IF 性别为“男” THEN
做修理工
ELSE 做清洁工 CASE :“高中”
IF 性别为“男” THEN 做修理工
ELSE 做清洁工 CASE :“大专” 做技术员
ELSE IF 年龄>=25 且 年龄<40 THEN SWITCH (学历)
>40
25-40
年龄 学历 性别
男------修理工
女-----清洁工
初中 高中 男 ---修理工 女 –--清洁工
25-40 男------钳工
女-----车工
初中 高中 大专------------------------技术员 男 ---钳工 女 –--车工 大专------------------------技术员 初中-----------------脱产学习 高中-------------------电工
大专------------------技术员
{ CASE :“初中”
IF 性别为“男” THEN 做钳工 ELSE 做车工 CASE :“高中”
IF 性别为“男” THEN 做钳工 ELSE 做车工 CASE :“大专” 做技术员 } ELSE
SWITCH (学历)
{ CASE : “初中” 脱产学习 CASE :“高中” 做电工
CASE : “大专” 做技术员 }
5、下面是一项货运收费政策:
“航空运费”,重量小于或等于20kg 的货物,每千克6元,若重量大于20kg ,超重部分每千克元,航空运费的最低起价是12元。

这项标准适用于国内航线,如果是国际航线,运费加倍。

请用判定树、判定表表达。

注:设重量为W(单位为Kg)
重量<=2Kg ,重量>2Kg 且重量<=20Kg ,重量>20Kg ,分别用L 、M 、H 表示
判定树:
重量<=2Kg —— 12元
重量>2Kg 且<=20Kg —— 6W 元 重量>20Kg —— (W-20)+120
重量<=2Kg —— 24元
重量>2Kg 且<=20Kg —— 12W 元 重量>20Kg —— 13(W-20)+240
6、下面是中国邮政电子汇兑系统中汇兑资费计算加工中资费计算的方法:
无论是本埠(县)还是外埠资费计算方法相同。

每汇款1元(以元为单位计算)收费元,每笔汇款最低汇费为2元,最高汇费为50元。

请用判定树、判定表表达。

解:设汇款金额为W 元。

判定树如下:
汇额 本埠/外埠 汇费
国内
国际
<=200 ----------------------- 2元
>200且<=5000元----------- W*元
>5000 --------------------- 50元
可简化为:
第4章
一、判断题
1、(√)如果在需求分析阶段采用了结构化分析方法,则软件设计阶段就应采用结构化设计方法。

2、(√)概要设计与详细设计之间的关系是全局和局部的关系。

3、(×)一个模块的作用范围应该大于该模块的控制范围。

4、(√)模块间的耦合性越强,则模块的独立性越弱。

5、(×)在设计模块时,应使一个模块尽量包括多个功能。

6、(√)软件结构图可以利用数据流图映射出来。

7、(×)结构化设计是一种面向数据结构的设计方法。

8、(√)在结构化设计过程中首先要确认DFD。

二、选择题
1、软件结构图的形态特征能反映程序重用率的是(C)。

A、深度
B、宽度
C、扇入
D、扇出
2、概要设计的目的是确定整个系统的(B)。

A、规模
B、功能及模块结构
C、费用
D、测试方案
3、耦合是对软件不同模块之间互连程度的度量。

各种耦合从强到弱的排列为(C)。

A、内容耦合,控制耦合,数据耦合,公共环境耦合
B、内容耦合,控制耦合,公共环境耦合,数据耦合
C、内容耦合,公共环境耦合,控制耦合,数据耦合
D、控制耦合,内容耦合,数据耦合,公共环境耦合
4、当一个模块直接使用另一个模块的内部数据时,这种模块之间的耦合为(D)。

A、数据耦合
B、公共耦合
C、标记耦合
D、内容耦合
5、数据耦合和控制耦合相比,则(B)成立。

A、数据耦合的耦合性强
B、控制耦合的耦合性强
C、两者的耦合性相当
D、两者的耦合性需要根据具体情况分析
6、衡量模块独立性的标准是(D)。

A、耦合的类型
B、内聚的类型
C、模块信息的隐藏性
D、耦合性和内聚性
7、如果某种内聚要求一个模块中包含的任务必须在同一段时间内执行,则这种内聚为(A)。

A、时间内聚
B、逻辑内聚
C、通信内聚
D、信息内聚
8、为了提高模块的独立性,模块内部最好是(C)。

A、逻辑内聚
B、时间内聚
C、功能内聚
D、通信内聚
9、在结构化设计方法中,下面哪种内聚的内聚性最弱(C)。

A、逻辑内聚
B、时间内聚
C、偶然内聚
D、过程内聚
10、软件设计是把(A)转换为软件表示的过程。

A、软件需要
B、系统分析
C、数据库
D、软件代码
11、概要设计的主要成果是(C)。

A、用户的界面需求
B、用户的分析方案
C、概要设计说明书
D、系统总体方案
12、数据结构设计也是概要设计的重要内容,主要是进行数据的(A)设计。

A、逻辑
B、存取
C、用户视图
D、索引
13、概要设计与详细设计衔接的图形工具是(B)。

A、DFD图
B、SC图
C、程序流程图PFD
D、PAD图
14、在软件开发中,下面任务不属于设计阶段的是(D)。

A、数据结构设计
B、给出系统模块结构
C、定义模块算法
D、定义需求并建立系统模型
15、下面不属于软件设计原则的是(C)。

A、抽象
B、模块化
C、自底向下
D、信息隐藏
三、简答题
1、软件设计应遵循的原则是什么
答:软件设计中一般应遵循以下原则:模块化、抽象、信息隐蔽与局部化、一致性、完整性和可验证性。

2、什么是软件的概要设计概要设计阶段完成的主要任务是什么
答:总体设计又称概要设计,是将软件需求转化为软件体系结构、确定系统级接口、全局数据结构和数据库模式。

3、启发设计规则有哪些
答:(1)模块功能的完善化;(2)消除重复功能,改善软件结构;(3)模块规模应该适中;(4)模块的深度、宽度、扇出和扇入都应适当;(5)模块的作用范围应该在控制范围之内;(6)力争降低模块接口的复杂程度;(7)设计单入口、单出口的模块;(8)模块功能应该可以预测。

四、应用题
根据以下的C语言程序段判断模块A和B之间属于哪一种耦合,模块B是哪一种内聚。

1、
模块A“开发票”:
……
water_fee= calc_waterfee(,);
模块B“计算水费”:
float calc_waterfee(float mount,float price);

float fee;
……
feturn fee;

答:模块A和B是数据耦合,模块B是功能内聚。

2、
模块A:
……
flag=1;
max=max_avg(flag);
……
模块B:
int max_avg(int flag)

……
if(flag= =1)
……
else if(flag= =0)
……

答:模块A和B是控制耦合,模块B是逻辑内聚。

第5章
一、判断题
1、(√)详细设计也称模块设计。

2、(×)在数据代码设计时,应尽量让一条代码代表多个信息。

3、(×)在数据代码设计时,应可能设计字母和数字混合代码。

4、(×)在输出界面设计时,要尽可能使用代码或缩写,以求简洁。

5、(×)详细设计评审应尽可能和概要设计评审一同进行。

二、选择题
1、软件详细设计的主要任务是确定每个模块的(A)。

A、算法和使用的数据结构
B、外部接口
C、功能
D、程序
2、借助于软件工具,可将(C)容易地转换为高级语言源程序。

A、程序流程图
B、N-S图
C、PAD图
D、判定表
3、不属于详细设计工具的是(A)。

A、DFD图
B、PAD图
C、PDl
D、N-S图
4、程序的三种基本结构是(C)。

A、过程、子过程和子程序
B、递归、堆栈和队列
C、顺序、选择和重复
D、调用、返回和转移
5、下面描述中,符合结构化程序设计风格的是(A)。

A、使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑
B、模块只有一个入口,可以有多个出口
C、注重提高程序的执行效率
D、不使用goto语句
三、简答题
1、软件的详细设计阶段完成的主要任务是什么
答:(1)算法设计;(2)数据结构设计;(3)模块接口细节设计;(4)测试用例设计;(5)数据库物理设计;(6)数据代码设计;(7)其他设计;(8)编写详细设计说明书并进行评审。

2、数据输入界面设计的主要原则有哪些
答:在设计数据输入界面时应做到:尽量简化用户的工作、减少输入的出错率;减轻用户的记忆负担、尽可能减少输入量并实现自动输入;对共同的输入设置默认值;使用代码或缩写;自动填入已输入过的内容;列表式输入; 数据分组输入。

3、代码设计的原则有哪些
答:代码设计的原则是标准化、唯一性、可扩充性、简单性、规范性和适应性。

四、应用题
1、请分别使用程序流程图、PAD图和N-S图描述下列程序的算法。

答:(1)求整数1-n的累加和SUM,其中n的值由键盘输入。

程序流程图如下。

相关文档
最新文档