版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《软件工程》习题参考答案
第一章
1、什么是软件危机?产生原因是什么?
软件开发技术的进步未能满足发展的要求.在软件开发中遇到的问题找不到解决的办
法,问题积累起来,形态尖锐的矛盾,导致了软件危机。
产生原因:
⑴软件规模越来越大,结构越来越复杂。
⑵软件开发管理困难而复杂。
(3)软件包开发费用不断增加。
(4)软件开发技术落后。
⑸生产方式落后,仍采用手工方式。
(6)开发工具落后,生产率提高缓慢。
2、什么是软件工程?它目标和内容是什么?
软件工程就是用科学的知识程和技术原理来定义,开发,维护软件的一门学科。
软件工程目标:付出较低开发成本;达到要求的功能;取得较好的性能;开发的软件
易于移植;只需较低的维护费用;能按时完成开发任务,及时交付使用;开发的软件可靠
性段I。
软件工程内容:研究内容包括开发技术和开发管理两个方面。
开发技术主要研究:软件开发方法,开发过程,开发工具和环境。
开发管理主要研究:软件管理学,软件经济学,软件心理学。
3、软件工程面临的问题是什么?
软件工程需要解决的问题:软件的费用,可靠性,可维护性,软件生产率和软件的重
用。
4、什么是软件生存周期?它有哪几个活动?
软件生存周期:一个软件从提出开发要求开始直到该软件报废为止的整个时期。
包括:可行性分析和项目开发计划,需求分析,概要设计,详细设计,编码,测试,
维护。
5、什么是软件生存周期模型?有哪些主要模型?
生存周期模型:描述软件开发过程中各种活动如何执行的模型。对软件开发提供强有
力的支持,为开发过程中的活动提供统一的政策保证,为参与开发的人员提供帮助和指导,
是软件生存周期模型化技术的基础,也是建立软件开发环境的核心。
主要有:瀑布模型,增量模型,螺旋模型,喷泉模型,基于知识的模型,变换模型。
第二章
1.可行性研究的任务是什么?
可行研究的任务:首先需要进行概要的分析研究,初步确定项目的规模,目标,约束
和限制。分析员再进行简要的需求分析,抽象出项目的逻辑结构,建立逻辑模型。从逻辑
模型出发,经过压缩的设计,探索出若干种可供选择的解决方法,对每种解决方法都要研
究它的可行性。
主要从三个方面考虑:
⑴.技术可行性:一般要考虑的情况包括开发的风险即设计出的系统能否达到要求的
功能和性能;资源的有效性;相关技术的发展是否支持;
⑵.经济可行性:进行开发成本的估算以及了解取得效益的评估,确定要开发的项目是否
值得投资。
⑶.社会可行性:要开发的项目是否存在任何侵权问题,运行方式在用户组织内是否可行,
现有管理制度、人员素质、操作方式是否可行。
2.项目开发计划有哪些内容?
完善软件开发计划"
2.什么是结构分析方法?该方法使用什么描述工具?
结构化分析:简称SA,面向数据流进行数据分析的方法。采用自顶向下逐层分解的分
析策略。顶层抽象地描述整个系统,底层具体地画出系统工程的每个细节。中间层则是从
抽象到具体的过渡。使用数据流图,数据字典,作为描述工具,使用结构化语言,判定表,
判定树描述加工逻辑。
3.结构化分析方法通过哪些步骤来实现?
⑴了解当前系统的工作流程,获得当前系统的物理模型。⑵抽象出当前系统的逻辑模
型。⑶建立目标系统的逻辐模型。⑷作进一步补充和优化。
4.什么是数据流图?其作用是什么?其中的基本符号各表示什么含义?
数据流图(DFD):以图形的方式描述数据在系统中流动和处理的过程。只反映系统必
须完成的逻辑功能,是一种功能模型。
数据流是数据在系统内传播的路径,由一组
-----------►箭头,表示数据流
成分固定的数据项蛆成.
图或惟圆,表示加工对数据进行某些操作或变换。每个加工也要
O有名字,通常是动词短语,描述完成的加工
,双杠,表示数据存储指暂时保存的数据。
软件系统外部环境的实体,为帮助理解系统
方框,数据源点或终点接口界面而引入,只出现在顶层图中。
________表示数据流,只能水平或垂直画,•
编号<:-
表示加工V
陛号工二表示数据存储•
<-
后
表示源点或经点“
5什么是数据字典?其作用是什么?共有哪些条目?
数据字典(DD)用来定义数据库流图中的各个成分的具体含义。有以下四类条目:数
据流,数据项,数据存储,基本加工。
符号含义例及说明
一被定义为
与X^+b表示X由a和b组成
[十]或X-[a|b]表不X由a或b姐成
(•,,)重复X-{a}表示X由0或多个a组成
m{…}n或{…)重复X-2(a}5表示X中最少匕现2次a,谖多出现5次a,5,
2为重复次数的上下限.
(-)可选X=<a)表示a可在X中出现,也可不出现.
故据兀素X-"a"表不X是取值为字符a的数据兀素.
••连接符X=i..9表示X可取1到9中任意一个值
具体条目内容及举例妇下:
数据流条目
数据流名称:订单
别名:无
简述:顾客订货时填写的项目
来源:顾客
去向:加工1"检验订单"
数据流量:1000份/每周(单位时间内的传输次数)
组成:编号+订货日期+顾客编号+地址+电话+银行帐号+货物名称+规格+数量
数据存储条目
数据存储名称:库存记录
别名:无
简述:存放库存所有可供货物的信息
组成:货物名称+编号+生产厂家+单价+库存量
组织方式:索引文件,以货物编号为关键字
查询要求:要求能立即查询
数据条目
数据项名称:货物编号
另(]名:G-No,G-num,Goods-No
简述:本公司所有货物的编号
类型:字符串
长度:10
取值范围及含义:
第一位:进口/国产
第2-4位:类别
第5-7位:规格
第8-10位:品名编号
加工条目
加工名:查阅库存
编号:1.2
激发条件:接收到合格订单时
优先级:普通
输入:合格合格订单
输出:可供货订单,缺货订单
加工逻辑:根据库存记录
IF订单项目数量〈该项目库存量临界值
THEN可供货处理
ELSE此订单缺货,登录,待进货后再处理
ENDIF
6描述加工逻辑有哪些工具?
加工逻辑的描述:一般用结构化语言,判定表,判定树
结构化语言是介于自然语言和形式语言之间的一种半形式化语言。它的结构可分里层
和内层
⑴外层:用来描述控制结构,采用顺序,选择,重复三种基本结构。
①顺序结构:是一组祈使语句,选择语句,重复语句的顺序排列
②选择结构:一般用IF-THEN-ELASE-ENDIF,CASE-OF-ENDCASE等关键词。
③重复结构:一般用DO-WHILE-ENDDO,REPEAT-UNTIL等关键词。
⑵内层:一般采用祈使语句的自然语言短语,使用数据字典中的名词和有限的自定义
词,其动词含义要具体,尽量不使用形容词和副词来修饰。
判定表由四个部分组成:条件定义条件取值的蛆合
动作定义在各种取值的组合下应执行的动作
例:加工逻辑描
述为,如果申请者的年龄在21岁以下,要额外收费;如果申请者是21岁以上并是26岁
以下的女性,适用于A类保险;如果申请者是26岁以下的已婚男性,或者是26岁以上的
男性,适用于B类保险;如果申请者是21岁以下的女性或是26岁以下的单身C类保险。
附此之外的其他申请者都适用于A类保险。
条件取值表
条件名取值符号取值数
年龄;S2】CM1.-3
年龄21V年龄K26Y
年龄》26L
性别更M2.-2
女F
未婚
婚姻S
婚M3.=2
已E
判定表
123456789101112
年龄CCCCYYYYLLLL
性别FFMMFFMMFFMM
婚姻SESESESESESE
A类保除7VVV
B类保险VVVV
C类保除V./VV
额外收费VVV
判写表能在什么条件下系统应做什么动作准确无误地表示出来,但不能描述循环的处理特
性,循环处理还需结构化语言。
7简述SA方法的优缺点。
SA方法是软件需求分析中公认的,有成效的,技术成熟,使用广泛的一种结构化分析
方法。较适用于开发数据处理类型软件的需求分析。利用图形等半形式化工具表达需求,
简明,易读,也易于使用。但也存在一些弱点,表现如下:
(i)SA方法仅是一个静态模型,没有反映处理的顺序,即控制流程。
(2)SA方法使用DFD在分析与描述“数据要求”方面是有局限的,只有与数据库技术中
的实体联系图(ER图)结合起来,才能较完整地描述用户对系统的需求。
(3)DFD不适合描述人机界面系统的要求,一些人机交互较频繁的软件系统。
(4)SA方法要与形式化方法结合起来,才能更精确地描述软件需求。
⑸要借助需求分析工具,提高需求分析的质量及效率.
8.某银行的计算机储蓄系统功能是:将储户的存户填写的存款单或存款单输入系统,
如果是存款,系统记录存款人姓名,住址、存款类型、存款日期.利率等信息,并打印出
存款单给储户;如果是取款,系统计算清单给储户。请用DFD,IDEFO描绘该功能的需求,
并建立相应数据字典。
答:
利
率
政
策
存款单________存共凭证
段软单1银行储基结置单
银行储蓄系然A-0图
数据流名称:取款单、存款单
别名:无
简述:顾客存/取款时填写的单据
来源:顾客
去向:核查
数据流量:200份/天
组成:日期+[取]存款金额]+姓名+地址+[存/取款类型]+密码+{账号}
数据流名称:存款凭证
别名:无
简述:顾客存款后得到的凭据
来源:银行存款系统
去向:顾客
数据流量:200份/天
组成:日期十存款金额十储户姓名十储户地址+存款类型十账号十利率十操作员
数据流名称:结算单
别名:无
简述:顾客取款时得到的利率清单
来源:银行储蓄系统
去向:顾客
数据流量:200份/天
组成:取款日期+取款金额+储户姓名+储户地址+存款类型+利息+总金额+操作
数据流名称:存/取款信息
别名:无
简述:系统检查确认后得到的存/取信息
来源:银行储蓄系统
去向:登录
数据流量:200份/天
组成:日期+[存]取款金额]+储户姓名+储户地址+存款类型+账号+利率+密码+
操作员
数据流名称:付款信息
别名:无
简述:存储系统处理的取款信息
来源:银行储蓄系统
去向:付款处理
数据流量:200份/天
组成:日期+取款金额+储户姓名+储户地址+存款类型+账号+利息+总金额+操
作员
数据存储名称:账卡
别名:无
简述:存放用户信息及存取款情况
组成:储户姓名十储户地址十账号十I日期I+[存/取款金额]十存款类型十利率十密码十
操作员
组织方式:数据文件,以储户姓名或账号为关键字进行索引
查询要求:要求能立即查询并修改
数据项名称:存款类型
别名:无
简述:国家规定的几类存款方式
类型:字符串
长度:2位
取值范围及含义:00:定期;01:零存整取;10:活期;11:定/活两便
加工名:核查
编号:
激发条件:接受存款单或取款单
输入:存款单或取款单
输出:认定的合格的村/取款信息
加工逻辑:根据账卡及用户存感款单据
if单据二存款单then
存款单据是否填写规范,是否与现金一致
else
审核是否为有效取款单,取款金额不得超出存款金额,密码是否正确
9某图书管理系统有以下功能:
⑴借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对于第一次借书
的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10
本,若已达10,拒借,末达10本,办理借书(检查库存,修改库存目录并将读者借书情
况录入借书文件。)
⑵还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)作
罚款处理。否则,修改库存目录与借书文件。
⑶查询:通过借书文件,库存目录文件查询读者情况、图书借阅及库存情况,打印统
计表。
解:
顶层图
借书信息
统计表
第一次借书
借书文件
借书信息,借书通知
超过10本或库存无
拒绝借书
库存记录
图2
图3
图4
数据字典
数据流名称:借书
别名:借书单
简述:读者借书时填写的单据
来源:读者
去向:审核借书
数据流量:250份/天
组成:借书证编号+借阅日期+书名+借阅方式+密码+借阅人
数据流名称:还书
别名:无
简述:读者还书时附带的数据
来源:读者
去向:审核还书
数据流量:250份/天
组成:借书证编号十借阅日期十书名十借阅方式
数据存储名称:借书文件
别名:无
简述:借书证编号+借阅日期+书名+借阅方式+密码+借阅人+操作员
查询要求:要求能立即查询并修改
数据存储名称:库存文件
别名:无
简述:存放图书出/入库信息
组成:书名+出版社+作者+出版日期+入库数据+总数量+(内容简介)+当前库
存量
组织方式:数据文件,以书名为关键字进行索引
查询要求:要求能立即查询并修改
加工名:审核借书记
编号:1.1
激发条件:接受到借书证
输入:借书证
输出:认定合格的借书证
加工逻辑:根据借书文件及读者借书证
if借书证编号在借书文件存在and未过期and密码正确then
借书证有效
else借书证无效
10某厂对部分职工重新分配工作的政策是:年龄在20岁以下者,初中文化程度脱产学习,
高中文化程度当电工。20岁至40岁之间,中学文化程度,男性当钳工,女性当车工,大
学文化程度都当技术员。年龄在4。岁以上者,中学文化程度当材料员,大学文化程度当
技术员。请用结构化语言、判定表或判定树描述上述问题的加工逻辑。
结构化语言:
CASE年龄<20
CASE文化程度初中
分配工种脱产学习
CASE文化程度高中
分配工种电工
ENDCASE
CASE年龄<=40.AND>=20
CASE文化程度初中.OR.高中
CASE性别男
分配工种钳工
CASE性别女
分配工种车工
ENDCASE
ENDCASE
CASE文化程度大学
分配工种技术员
ENDCASE
ENDCASE
CASE年龄>40
CASE文化程度初中QR.高中
分配工种材料员
CASE文化程度大学
分配工种技术员
ENDCASE
ENDCASE
取值表
条件名取值符号取值效
年龄<20CM1.-3
年龄20二筋土40Y
年龄>40L
性别男MM2-2
女F
初中JM3.-3
文化程度高中S
科U
判定表
121456789101112131415161718
年龄CCCCCCYYYYYYLLLLLL
OJMMMFFFMMMFFFMMMFFF
文化程度JSVJSUJSuJSUJSUJSU
脱产学习VfJ/
电工Vf4/
钳工f/Vq
车工f/7V
技术员f/VVJ-J
材料员f/VVVV
判定树
一年龄<20「初中文化程度一脱产学习
高中文化程度—电工
r男性一钳工
分配工种―20」年龄;40丁初中或高中文化程度L女性_车工
1-大学文化程度—技术员
初中或高中文化程度材料员
_年龄>4Q大学文化程度技术员
第4章
1.什么是软件概要设计?该阶段的基本任务是什么?
把一个软件需求转换为软件表示时,首先设计出软件总的体系结构。称为概要设计或
结构设计。
基本彳壬务:
(1)设计软件系统结构,具体为:
采用某种设计方法,将一个复杂的系统按功能划分为模块。
确定每个模块的功能。
确定模块之间的调用关系。
确定模块之间的接口(模块之间传递的信息)
评价模块的结构质量
⑵进行数据结构及数据库的设计
(3)编写概要设计的文档
主要内容有:概要设计说明书,数据库说明书(DBMS的简介,概念模型,逻瑁设计,
结果)用户手册,修订测试计划(测试的策略、方法.步骤)
⑷评审:是否完整地实现了规定的功能、性能要求。设计方案是否可行。关键的处理
及内部接口定义的正确性,有效性,各部分的一致性。
2.软件设计的基本原理包括哪些内容?
⑴模块化:模块是软件的组成部分,是具有独立功能且可命名的一段程序,所有模块
整体,可以满足问题的要求。模块化即按照一定的原则,将软件划分成若干个模块,
每个模块完成一个特定的功能,然后把这些模块按照某种方法组装成一个软件系统,(可降
彳氐复杂度、减少工作量)
模块具有以下几种特性:
接口:模块的输入输出。
功能:指模块实现什么功能。
逻辑:描述模块内部妇何实现要求及所需的数据。
状态:该模块的运行环境,模块间调用与被调用关系。
⑵抽象:认识复杂现象过程所使用权的工具,只考虑事物本质的共同特性,忽略细节
和其它因素。通过抽象确定组成软件的过程实体。
⑶信息隐蔽:将模块实现自身功能的细节与数据"隐蔽"起来。模块间仅交换为完成系
统功能所必须的信息。
⑷模块独立性:每个模块只完成系统要求的独立的子功能。
3.衡量模块独立性的两个标准是什么?各表示什么含义?
内聚和耦合
内聚:又称为块内联系,指模块内部各成分之间相互关联的程度,以高内聚为设计日
耦合:也称块间联系,模块之间相互联系程度的度量,联系越紧密,耦合性越强,独
立性越差,以低耦合为设计目标。
4.模块的耦合性有哪几种?各表示什么含义?
⑴内容耦合:一个模块直接操作或修改另一模块的数据,或者不通过正常入口直接转
入另一模块
⑵公共耦合:两个或多个模块通过共同引用一个全局数据环境相互作用
⑶控制耦合:模块之间通过传递控制信息相互作用
⑷标记耦合:两个模块之间通过传递公共指针或地址相互作用的耦合
⑸数据耦合:模块之间通过传递数据交换信息
⑹无耦合:模块间无任何关系,独立工作
5.模块的内聚性有哪几种?各表示什么含义?
⑴偶然内聚:一个模块各个成分之间毫无关系
⑵逻辑内聚:将几个逻辑上相关的功能放在同一个模块中
⑶时间内聚:一个模块完成的功能在同一时间执行
⑷过程内聚:一个模块内部的处理成分是相关的,而且必须以特定的次序执行
⑸通信内聚:一个模块的所有成分都集中在同一个数据结构上
⑹顺序内聚:一个模块的各个成分同一个功能密切相关,而且一个成分的输出,作为
另外一个成分的输入
⑺功能内聚:模块内的所有成分属于一个整体,完成单一的功能。(内聚最高)
6.什么是软件结构?简述软件结构设计的优化准则。
⑴改进软件结构,提高模块独立性首先设计出软件初始结构,评价该结构,通过模块
分解或合并,力求降低耦合提高内聚。
⑵模块的规模应该适中
⑶模块结构的深度、宽度、扇出和扇入应适中
深度:软件结构中控制的层数
宽度:软件结构中同一层次上最大模块总数
扇入:某一模块有多少直接调用它的上级模块数目(越大越好)
扇出:一个模块直接控制(调用)下级模块的数目。(越少越好,3,4个为宜,不超
过9个,
”顶层扇出较高,中间弱出较少,底层模块高扇入多”
⑷一个模块的作用域(范围),应处在这个模块的控制域(范围)之内
模块的作用域:受该模块内一个判定影响的所有模块的集合
模块的控制域:这个模块本身以及所有直接或间接从属于它的模块的集合
7.什么样是“事物流"?什么是"变换流"?试将相应形式的数据流图转换为软件结构图
数据流图(DFD)一般可分为"变换流"「事物流"两种。
"变换流":由输入'输出、变换(或称处理)三部分组成,是一顺序结构。
"事物流":它的某个加工,分离成许多发散的数据流,形成许多加工路径,并且根据
输入值选择其中一个路径来执行。(这人加工称为事务处理中心)
8.图是某系学籍管理的一部分,(a),(b)分别是同一模块A的两个不同设计方案,你认
为哪一个设计方案较好?请陈述理由。
答:我认为(b)方案较好。要评价一个软件结构设计,主要看模块的独立性,要从软件
结构的耦合性和内聚性两个方面来衡量。对于⑶方案,模块A与模块B之间形成了控制耦
合,因此独立性不高,而在B模块内部,有两个不同的功能被放在一起,形成的是逻辑内
聚,内聚性不高。对于(b)方案,模块A与B1和B2之间是数据耦合,独立性较强,在B1
和B2内部,只完成单一的功能,是功能内聚,因此内聚性高,可维护性好,因此相比而
言(b)方案比⑻方案更好些。
9.请将图4-16的DFD转换为软件结构图。(注:图中㊉表示或者)
子图A
Al
解:我们可以看出主图是变换型DFD,而子图是事务型DFD。根据结构设计的方法,
得到的结构图如下:
10将第3章习题中的第8题、第9题设计成相应的软件结构图(SC)和HIPO图。
某银行的计算机储蓄系统功能是:将储户的存户填写的存款单或存款单输入系统,如
果是存款,系统记录存款人姓名.住址、存款类型、存款日期、利率等信息,并打印出存
款单给储户;如果是取款,系统计算清单给储户。
2、某图书管理系统有以下功能:
⑴借书:输入读者借书证。系统首先检查借书证是否有效,若有效,对于第一次借书
的读者,在借书证上建立档案。否则,查阅借书文件,检查该读者所借图书是否超过10
本,若已达10,拒借,末达10本,办理借书(检查库存,修改库存目录并将读者借书情
况录入借书文件。)
⑵还书:从借书文件中读出与读者有关的记录,查阅所借日期,如超期(3个月)作
罚款处理。否则,修改库存目录与借书文件。
(3)查询:通过借书文件,库存目录文件查询读者情况、图书借阅及库存情况,打印统
计表。
把上面数据流程图转换为软件结构图和IPO图
计算机储蓄系统-“输入取款信息并检睑”的IFO图
系统名:计篁机储蓄系统设计人:
模块名:输入取款信息并检验日期:
模块编号:
上层调用模块:取款模块下层调用模块:
文件名:账卡文件全局变量:
给入数据:账号H储存数量L输出数据:
密码M取款数量X
处理:ifHandM不吻合then(退出取款处理)
ekeifX>L(退出取款处理)
eke(继续执行取款处理)
e«Jjf
注释:
计苴机储蓄系统
取款处理计时器存款处理查询处理
打
印
统
计
表
图书首理系妩
还书处理查闻处理
技
打
检
建
条
%2印
一
定
立
件
统
查W办
审
查
W/计
党P
偿
询
P理K袤
证
档
手
信
还手处
案
盘
书
书
理
源
这
星
制
苜
曾
发4
火
夕
发
言
记
心
星1
曷
人
ft行
借
件
聿
ff案
尾
图书管理系统的H图
图书省理系统一一“确定能否借书”的IPO图
系统名:计篁机储蓄系统设计人:
模块名:确定是否借书日期:
模块编号:
上层调用模块:借书处理下层调用模块:
文件名:库存文件、借书文件全局变量:
输入数据:书名Name库存数量L输出数据:
己借本数S
处理:IfS>9then(拒绝惜书)
ElseIf摩存书目无Naim(拒绝借书)
ElseifL=O(拒绝借书)
Ebe《调用“办理借书手康”)
刷
飒
注释:
第5章
1、详细设计的基本任务是什么,有哪几种描述方法?
答:详细设计的基本任务包括:
1、为每个模块进行傩田的算法设计
2、为模块内的数据结构进行设计
3、对数据库进行物理设计
4、其他设计
5、编写详细设计说明书
6、评审
详细设计的描述方法有图形、表格和语言,其中图形常用结构化程序流程图、盒图和
PAD(问题分析图)为描述工具,语言常用过程设计语言(PDL)来作为工具。
2、结构化程序设计的基本要点是什么?
答:主要有三个:
1、采用自顶向下、逐步求精的程序设计方法
2、使用三种基本控制结构构造程序。任何程序都可以由顺序、选择、重复(循环)三种
基本控制结构构造,这三种基本结构的共同点是单入口、单出口。
3、主程序员组的组织形式。
3、简述Jackson方法的设计步骤。
答:Jackson方法的设计步骤如下:
Q)分析并确定输入数据和输出数据的逻辑结构,并用Jackson结构图表示这些数据结
构。
(2)找出输入数据结构和输出数据结构中有对应关系的数据单元。
(3)按一定的规则由输入、输出的数据结构导出程序结构。
(4)列出基本操作与条件,并把它们分配到程序结构图的适当位置。
(5)用伪码写出程序。
4、请使用流程图、PAD图和PDL语言描述下列程序的算法。
(1)在数据A(l)〜A(10)中求最大数和次大数。
解:如图所示:
PDL语言描述:
GET(a[l],a[2],...a[10])
max=a[l];
max2=a[2];
F0Ri=2T010
IFa[i]>max
max2=max;
max=a[i];
ELSE
IFa[i]>max2
max2=a[i];
ENDIF
ENDIF
ENDFOR
PUT(max,max2)
END
(2)输入三个正整数作为边长,判断该三条边构成的三角形是等边、等腰还是一般三角
形。
解:如图:
N-si®@图
愉入边长a,b,c的值
否
出
否S:
不
这8
个
一?
一
形
角
输出
舌
输出
输出
日
是等
“
日
“
等嬉
边三
等
曾
出
裳
角形
三
角
三
角
一
二
形
三
”
形
角
”
雨
形
”
PDL语言描述如下:
GET(a,b,c)
IF(a+b>candb+c>aandc+a>b)
IF(a=b)
IF(d=c)
PUT("等边三角形")
ELSE
PUT("等月要三角形")
ENDIF
ELSE
IF(a=c)
PUT("等腰三角形")
ELSE
IF(b=c)
PUT("等腰三角形")
ELSE
PUT("一般三角形")
ENDIF
ENDIF
ENDIF
ELSE
PUT("这不是一个三角形")
ENDIF
5、用PAD图描述下面问题的控制结构。
有一个表A(l)、A(2)、...A(n),按递增顺序排列。给定一个Key值,在表中用折半法
查找。若找到,将表位置i送入x,否则将零送到x,同时将key值插入表中。
算法:
⑴置初值H=l(表头),T=N(表尾)。
⑵置i=[(H+T)/2](取整)。
(3)若Key=A(i),则找到,i送到x;若Key>A(i)f则Key在表的后半部分,i+1送入H;
若Key<A(i),则Key在表的前半部分,i-1送入T,重复第2步查找直到H>T为止。
(4)查不到时,将A(i),...A(N)移到A(i+l)...A(N+l>Key值送入A(i)中。
解:如图所示:
6、一个正文文件由若干记录组成,每个记录是一个字符串,要求统计每个记录中空格
字符的个数及文件中空格字符的总个数。要求输出数据格式是每复制一行字符串后,另起
一行打印出这个字符串中的空格数,最后打印出文件空格的总个数,用Jackson方法设计
该程序结构。
给人数据结沟图输出要据结构图
第6章
1、在项目开发时选择程序设计语言通常考虑哪些因素?
答:通常要考虑的因素有:
项目的应用领域、软件开发的方法、软件执行的私境、算法和数据结构的复杂性以及
软件开发人员的知识等。
2、举例说明各种程序设计语言的特点及适用范围?
答:以常见的一些编程语言为例:
FORTRAN语言,它不仅面向科学计算,数据处理能力也极强。适用于科学工程计算
Pascal语言,具有很强的数据和过程结构化能力,它语言简明
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 八下政治课件
- 饮食减肥课件
- 质量意识与质量管理培训
- 工业制造业转型升级
- 以案导学,举一反三 生活中的法律常识 复习策略
- 国家开放大学《幼儿园社会教育专题》形考作业1-4参考答案
- 道路安全违法新规解读
- 颈部淋巴结分组勾画课件
- 早发性HAP的诊治原则课件
- 定性资料统计描述课件
- T-ZAQ 10116-2023 新时代基层理论宣讲0576 工作法操作规范
- 睡眠觉醒障碍
- 货物放行流程
- 酒店法规和法律事务案例分析
- 细菌的 遗传与变异
- 建筑环境测试技术(山东联盟)智慧树知到答案章节测试2023年山东建筑大学
- 建筑施工技术的现状及未来发展分析
- 太钢(集团)矿业分公司峨口铁矿露天转地下开采项目环评报告
- 年终总结年底业绩冲刺年末销售业绩拼搏激励员工工作计划优秀模板两篇
- 中山特种气体项目可行性研究报告
- GB/T 6576-2002机床润滑系统
评论
0/150
提交评论