第5章习题(修改ok)-答案
更新时间:2023-11-19 01:48:01 阅读量: 教育文库 文档下载
1.简述详细设计的任务。
包括模块的算法设计、模块内的数据结构设计、模块接口设计、其它根据软件特点需要完成的设计、模块测试用例设计、设计文档编写、设计评审。
2.简述详细设计的原则。
① 模块的逻辑描述应清晰易读、正确可靠; ② 设计的处理过程应该简明易懂;
③ 选择恰当的描述工具来描述模块算法。
3.简述结构化程序设计基本要求和特点。
要点:
a.采用自顶向下、逐步求精的程序设计方法 b.使用三种基本程序控制结构构造程序
1).用顺序方式对过程分解,确定各部分的执行顺序。 2).用选择方式对过程分解,确定某个部分的执行条件。
3).用循环方式对过程分解,确定某个部分重复的开始和结束的条件。 c.主程序员组的组织形式。 特点:
① 自顶向下、逐步求精;
② 具有单入、单出的控制结构(取消GOTO语句) 4.简述用户界面设计的基本原则
(1)可靠性
用户界面应当提供可靠的、能有效减少用户出错的、容错性好的环境。一旦用户出错,应当能检测出错误、提供出错信息,给用户改正错误的机会。
(2)简单性
简单性能提高工作效率。用户界面的简单性包括输入、输出的简单性;系统界面风格的一致性;命令关键词的含义、命令的格式、提示信息、输入输出格式等的一致性。
(3)易学习性和易使用性
用户界面应提供多种学习和使用方式,应能灵活地适用于所有的用户。 (4)立即反馈性
用户界面对用户的所有输入都应立即做出反馈。当用户有误操作时,程序应尽可能明确地告诉用户做错了什么,并向用户提出改正错误建议。
三、下图是使用Basic语言编写的一个打印A,B,C三数中最小者的程序的流
程图。其中出现了6个GOTO语句,一个向前,5个向后,程序可读性很差。
if ( A < B ) goto 120;
if ( B < C ) goto 110; 100 print C; goto 140; 110 print B; goto 140;
120 if ( A < C ) goto 130; goto 100; 130 print A; 140
试利用基本控制结构,将程序中的GOTO语句消去。(10分)
三、答案:使用if - then - else结构化构造,则上述程序段可改成如下形式。 if ( A < B and A < C ) then
print A
else if ( A >= B and B < C ) then print B else print C;
4.请使用流程图、PAD图各PDL语言描述下列程序的算法。 (1)在数据A(1)-A(10)中求最大数和次大数。
(2)输入三个正整数作为边长、判断该三条边构成的三角形是等边、等腰或一般三角形。 答: (1)
1)流程图:
2)PAD图
3)PDL语言 定义 n1=n2=0
输入A(1).......A(10) n1=n2=A(1) while i>10 if A(i)>=n1 n2=n1 n1=A(i) end while
四、选择一种将三个数从小到大排序的算法,分别用(1)流程图,(2)N-S图,(3)PAD图描述其详细过程。
设数为a,b,c,其详细过程如下: (1)流程图
(2)N-S图
(3)PAD图
40.请使用PAD图和PDL语言描述在数组A(1)~A(10)中找最大数的算法。
解:PDL语言: N=1
WHILE N<=10 DO
IF A(N)<=A(N+1) MAX =A(N+1); ELSE MAX =A(N) ENDIF; N=N+1; ENDWHILE; PAD图:
[解析]人工查找时,是从第一个元素开始查找,用当前元素与下一个元素比较,将较大者作为当前元素又与下一元素比较,如此循环,直到数组末尾。
2、 将下面给出的伪码转换为N-S图和PAD图。 void root ( float root1, float root2 ) {
i = 1; j = 0; while ( i <= 10 ) {
输入一元二次方程的系数a, b, c; p = b*b – 4*a*c;
if ( p < 0 ) 输出“方程i无实数根”; else if ( p > 0 ) 求出根并输出; if ( p == 0 ) { 求出重根并输出; j = j + 1; } i = i +1;
}
输出重根的方程的个数j;
i = 1; j = 0; }
while ( i <= 10 ) 【解答】
输入a, b, c; 计算 p = b2 - 4ac;
(1)N-S图 p < 0 ? T F p > 0 ? 输出“方程i”F T 无实根 ? 求出根并输出
p == 0 ? T F
? 求出重根并输出; j = j + 1;
i = i + 1; 输出重根的方程个数i
(2)PAD图
i = 1; j = 0; 输入a,b,c; 计算 p = b2–4ac;
求出根并输出
p > 0 ?
p < 0 ? while ( i <= 10 )
输出方程i无实根
求出重根并输出; j = j+1;
p = 0 ?
i = i + 1; 输出重根的方程个数i
9.下图给出的程序流程图代表一个非结构化的程序,请问: (1)为什么说它是非结构化的? (2)设计一个等价的结构化程序。
(3)在(2)题的设计中你使用附加的标志变量flag吗?若没用,请再设计一个使用flag的程序;若用了,再设计一个不用flag的程序。 START
IF p THEN
WHILE q DO f
正在阅读:
第5章习题(修改ok)-答案11-19
房地产私募股权基金研究04-20
在党史学习教育专题读书班结束时的总结讲话03-27
语言文字规范化学校自查报告04-04
12字伤感网名大全,超长十二字qq名字02-11
2019-2020年(秋)九年级语文上册 第六单元 综合性学习 主题探究06-01
2012年甘肃一万名、三支一扶、进村进社公共基础真题04-06
础设施投资效率相对有效性测算与分析06-11
来我跟你说一个人作文600字06-21
- exercise2
- 铅锌矿详查地质设计 - 图文
- 厨余垃圾、餐厨垃圾堆肥系统设计方案
- 陈明珠开题报告
- 化工原理精选例题
- 政府形象宣传册营销案例
- 小学一至三年级语文阅读专项练习题
- 2014.民诉 期末考试 复习题
- 巅峰智业 - 做好顶层设计对建设城市的重要意义
- (三起)冀教版三年级英语上册Unit4 Lesson24练习题及答案
- 2017年实心轮胎现状及发展趋势分析(目录)
- 基于GIS的农用地定级技术研究定稿
- 2017-2022年中国医疗保健市场调查与市场前景预测报告(目录) - 图文
- 作业
- OFDM技术仿真(MATLAB代码) - 图文
- Android工程师笔试题及答案
- 生命密码联合密码
- 空间地上权若干法律问题探究
- 江苏学业水平测试《机械基础》模拟试题
- 选课走班实施方案
- 习题
- 答案
- 修改
- ok
- 武汉理工大学复试试题
- 2016年10月学考选考考前适应性考试联考
- 新东方英语语法(2011年最新版本)
- 现代大学英语第二版精读4 Unit 6 The telephone Key to Exercises
- 数控理论题
- 高分子物理习题答案
- 课程改革中的识字写字教学 doc崔鸾
- 浅谈农村家庭矛盾纠纷的原因和调解途径
- 莱钢750m3高炉冷风拨风保安系统
- 2012年CPA经济法练习 - 第十章
- 农民专业合作社与供销合作社
- 施工现场消防安全培训考核试题
- 著名教育家及主要教育思想
- race car aerodynamics, designing for speed 空气动力学 - 图文
- SAK-160钢卷尺内校标准
- 2018-水电站职工年终工作总结-范文模板(6页)
- 8KVA单相逆变器设计与仿真
- 1011序列检测器
- 盲板阀适用说明书 - 图文
- 复变函数与积分变换考试题(1)