软件工程三套综合练习
《软件工程》期末试卷(3套含答案)

《软件工程》期末试卷(一)(满分100分)考试时间:120分钟(可根据具体情况适当调整)1.单项选择题(每题2分,共20分)(1)以下哪一项不属于软件工程三要素()。
A.过程B. 方法C. 工具D. 计划(2)以下哪一项不属于软件管理过程()。
A. ISO9000B. CMMC. IEEED. 软件企业文化(3)对安全性要求极高的开发方法是()。
A. 面向过程的方法B. 面向对象的方法C. 面向数据的方法D. 形式化方法(4)在软件的生命周期中,位于需求分析和单元测试之间的是()。
A.详细设计B. 集成测试C. 立项D. 维护(5)以下对于喷泉模型的说法正确的是()。
A.需要分析结束后才开始设计B. 开发人员可以同步开发C. 不需要大量的开发人员D. 审核简单(6)软件设计的三层体系结构是()。
A.表示、中间、数据B. 表示、客户、逻辑C. 表示、业务、逻辑D. 前端、表示、数据(7)活动图是()。
A. 表达系统静态特性的图B. 展现数据之间转移的控制流C. 着重逻辑过程D. 一种分组机制(8)采用黑盒测试()。
A. 低成本见效快B. 用户需求报告复杂C. 准备工作时间长D. 定位准确(9)动态模型不包括()。
A. 状态模型B. 对象模型C. 交互模型D. 活动模型(10)用例之间的关系有()。
A. 扩展关系、协助关系B. 异步关系、同步关系C. 顺序关系、结构关系D. 包含关系、扩展关系2.填空题(每题2分,共20分)(1)需求分析员参与客户需求调研,撰写________________。
(2)_______________是软件策划的核心、重点与难点。
(3)软件由程序、数据和______________组成。
(4)______________是软件设计的基础,______________是软件开发的核心。
(5)需求分析分为两个阶段,_______________阶段和需求规约阶段。
(6)对象图的组成元素包括对象和______________。
软件工程试卷及答案多套精品试卷

软件工程试卷及答案多套精品试卷IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】软件工程试题及答案第一部分选择题一、单项选择题每小题1分,共20分。
(在每小题的四个选项中只有一个选项是符合题目要求的,请将正确选项前的字母填在题后的括号内)1.在下列工具与环境中()属于较早期的CASE。
A.基于信息工程CASE B.人工智能CASEC.结构的基于图形CASE D.集成的CASE环境2.Putnam成本估算模型是一个()模型。
A.静态单变量 B.动态单变量 C.静态多变量 D.动态多变量3.在McCall软件质量度量模型中,()属于面向软件产品修改。
A.可靠性 B.可重用性C.适应性 D.可移植性4.ISO的软件质量评价模型由3层组成,其中用于评价设计质量的准则是()A.SQIC B.SQMC C.SQRC D.SQDC5.软件复杂性度量的参数包括()A.效率 B.规模 C.完整性 D.容错性6.对象实现了数据和操作的结合,使数据和操作()于对象的统一体中。
A.结合 B.隐藏C.封装 D.抽象7.软件调试技术包括()A.边界值分析 B.演绎法 C.循环覆盖 D.集成测试8.瀑布模型的存在问题是()A.用户容易参与开发B.缺乏灵活性 C.用户与开发者易沟通 D.适用可变需求9.软件测试方法中的静态测试方法之一为()A.计算机辅助静态分析 B.黑盒法 C.路径覆盖 D.边界值分析10.软件生命周期中所花费用最多的阶段是()A.详细设计 B.软件编码 C.软件测试D.软件维护11.第一个体现结构化编程思想的程序设计语言是()A.FORTRAN语言B.Pascal语言 C.C语言D.PL/1语言12.程序的三种基本控制结构是()A.过程、子程序和分程序B.顺序、选择和重复 C.递归、堆栈和队列D.调用、返回和转移13.在详细设计阶段,经常采用的工具有()A.PAD B.SA C.SC D.DFD 14.详细设计的结果基本决定了最终程序的()A.代码的规模 B.运行速度 C.质量 D.可维护性15.需求分析中开发人员要从用户那里了解()A.软件做什么 B.用户使用界面 C.输入的信息 D.软件的规模16.结构化程序设计主要强调的是()A.程序的规模 B.程序的效率C.程序设计语言的先进性D.程序易读性17.IDEF。
软件工程考试题及答案

软件工程考试题及答案一、单项选择题(每题2分,共20分)1. 软件工程的三要素不包括以下哪一项?A. 工具B. 方法C. 过程D. 环境答案:D2. 软件需求分析阶段的主要任务是确定软件的()。
A. 功能需求B. 性能需求C. 界面需求D. 所有选项答案:D3. 软件测试的目的是()。
A. 发现软件中的错误B. 证明软件是正确的C. 验证软件是否满足需求D. 所有选项答案:D4. 以下哪一项不是软件维护的类型?A. 纠错性维护B. 适应性维护C. 完善性维护D. 开发性维护答案:D5. 软件项目管理的主要目标是()。
A. 提高软件质量B. 控制成本C. 缩短开发周期D. 所有选项答案:D6. 瀑布模型的主要缺点是()。
A. 缺乏灵活性B. 难以适应需求变化C. 无法并行开发D. 所有选项答案:D7. 敏捷开发方法的核心理念是()。
A. 以文档为中心B. 以人为中心C. 以过程为中心D. 以工具为中心答案:B8. 软件配置管理的主要目的是()。
A. 确保软件的一致性B. 跟踪软件的变更C. 控制软件的版本D. 所有选项答案:D9. 以下哪一项不是软件工程的原则?A. 抽象B. 模块化C. 复用D. 随机性答案:D10. 软件工程的目标是()。
A. 开发高质量的软件B. 提高软件生产率C. 降低软件成本D. 所有选项答案:D二、多项选择题(每题3分,共15分)1. 软件需求分析阶段可能包括以下哪些活动?A. 需求收集B. 需求分析C. 需求规格说明D. 需求验证答案:ABCD2. 软件测试的类型包括以下哪些?A. 单元测试B. 集成测试C. 系统测试D. 验收测试答案:ABCD3. 软件维护的常见原因包括以下哪些?A. 适应环境变化B. 修正软件缺陷C. 提高软件性能D. 增加新功能答案:ABCD4. 软件项目管理的关键活动包括以下哪些?A. 项目规划B. 项目监控C. 项目沟通D. 风险管理答案:ABCD5. 软件工程中的常见开发模型包括以下哪些?A. 瀑布模型B. 螺旋模型C. 敏捷模型D. 增量模型答案:ABCD三、判断题(每题2分,共10分)1. 软件工程的目标是开发出零缺陷的软件。
软件工程练习题

"软件工程"练习题一、填空题1.软件主要包括程序、数据和文档三局部容。
2. 目前使用最广泛的软件工程方法学是传统〔构造化方法〕方法和面向对象方法。
3.软件可行性研究的任务是从技术、经济和社会可行性三个方面分析软件工程的可行性。
4.软件测试的目的是找出软件潜在的错误和缺陷;通常把软件测试方法分为黑盒测试〔功能测试〕和白盒测试〔构造测试〕两大类。
5.软件测试中,测试用例由输入数据和预期的输出结果两局部组成。
6.典型的软件生命周期模型〔软件过程模型〕包括瀑布模型、快速原型模型和增量模型、螺旋模型、喷泉模型等。
7.模块 A 调用模块 B 以查询学生成绩,模块A 通过参数向模块 B 传送所查询学生的**,模块 B通过参数向模块 A 返回学生的考试成绩。
模块A 和模块 B 之间的耦合类型属于数据耦合。
8.在类的继承构造中,不同层次的类共享同一个行为名称,但各个类可以按照自己的需要为同名行为设计不同的算法,此性质称为类的重写。
9.测试软件中的模块时,通常需要为被测模块设计辅助模块,辅助模块的名称分别是驱动模块和桩模块。
10.软件生存期中时间最长的是_软件维护阶段。
11.构造化分析方法中,功能模型用 DFD 描述;数据模型用 E-R 描述。
12.过程设计〔详细设计〕中,常用的描述工具有图形、表格和语言三类。
13.在模块构造图中,直接调用*一模块的其他模块数称为该模块的扇入数。
14.面向对象分析〔OOA〕方法中,必须定义对象间的通信机制,对象间通信是通过消息传递机制来实现的。
15.面向对象方法用对象分解取代了构造化方法的功能分解。
16.写出以下各对事物之间的关系〔继承、会萃、普通关联〕:交通工具——汽车的关系是:继承;书——读者的关系是:普通关联;班级——学生的关系是:会萃;多边型——线段的关系是:会萃。
17.面向对象设计〔OOD〕阶段,可以将面向对象的设计容划分为四局部,分别是:人机界面部分、问题域局部、任务管理局部和数据管理局部。
2024年软件资格考试系统分析师(高级)(综合知识、案例分析、论文)合卷试卷与参考答案

2024年软件资格考试系统分析师(综合知识、案例分析、论文)合卷(高级)模拟试卷(答案在后面)一、综合知识(客观选择题,75题,每题1分,共75分)1、软件工程的基本目标是()A. 提高软件质量B. 提高软件生产效率C. 降低软件成本D. 提高软件可维护性2、在软件需求分析过程中,以下哪个不属于需求验证的范畴?()A. 用户访谈B. 实际运行C. 演示验证D. 确认测试3、题干:在软件工程中,以下哪个阶段是用来确定软件需求的?A. 需求分析B. 系统设计C. 编码D. 测试4、题干:在UML(统一建模语言)中,以下哪种图用于展示系统的静态结构?A. 类图B. 序列图C. 状态图D. 活动图5、以下哪个选项是UML(统一建模语言)中用于描述系统内部组件之间交互的图?A. 时序图(Sequence Diagram)B. 类图(Class Diagram)C. 构件图(Component Diagram)D. 用例图(Use Case Diagram)6、软件需求规格说明书(SRS)的作用不包括以下哪项?A. 确保软件系统的需求是完整、一致和可验证的B. 为软件开发团队提供清晰的开发方向C. 作为项目验收的唯一依据D. 向利益相关者提供关于系统功能和性能的详细信息7、题目:在软件工程中,以下哪个阶段是需求分析的主要任务?A. 系统设计B. 系统规划C. 系统测试D. 需求分析8、题目:以下哪种方法不是软件测试中的静态测试方法?A. 检查B. 代码审查C. 单元测试D. 模块测试9、题干:以下哪个技术是实现数据加密的一种方式?A. RSAB. MD5C. HTMLD. TCP11、题干:在软件开发生命周期中,需求分析阶段的主要目标是?A. 确定软件系统的功能需求和非功能需求B. 设计软件系统的总体架构C. 实现软件系统的核心功能D. 测试和验证软件系统的质量13、在面向对象设计中,以下哪一项不是设计模式?A. 单例模式B. 命令模式C. 观察者模式D. 工厂方法模式15、关于面向对象的设计原则,以下哪一项陈述是正确的?A. 开闭原则表明一个模块应该对其接口开放,对其实现封闭。
2022年秋10月自考02333软件工程练习考题含解析

2022年秋10月自考02333软件工程练习考题一、单项选择题1、“与所规约的系统执行之间的偏差”是指______。
A.错误B.失效C.故障D.误差2、在教师科研方案中规定对教授、副教授和讲师分别计算分数,做相应的处理,则根据黑盒测试中的等价类划分技术,下列划分正确的是______。
A.3个有效等价类,3个无效等价类B.3个有效等价类,1个无效等价类C.1个有效等价类,1个无效等价类D.1个有效等价类,3个无效等价类3、软件生存周期是指______。
A.开发软件的全部时间B.使用软件的全部时间C.开发和使用软件的全部时间D.从形成概念开始到最后淘汰让位于新的软件产品的时间4、下列可用于概念模型和软件模型的动态结构的是______。
A.类图B.对象图C.部署图D.用况图5、软件测试中,白盒测试技术依据的是程序的______。
A.逻辑结构B.输入数据C.状态D.功能6、指一个模块内部各成分之间相互关联程度的度量是______。
A.耦合B.内聚C.扇入D.扇出7、RUP的迭代、增量式开发过程中,需要估算成本、进度,并能够减少次要的错误风险,至少需要完成______。
A.初始阶段B.精化阶段C.构造阶段D.移交阶段8、下列不属于需求规约的基本性质是______。
A.可重复的B.重要性和稳定性程度C.完整的D.一致的9、《ISO/IEC软件生存周期过程12207-1995》标准按过程主体把软件生存周期过程分为基本过程、组织过程和______。
A.供应过程B.开发过程C.测试过程D.支持过程10、在建模过程中,可用以描述加工的工具是______。
A.数据流B.判定树C.数据字典D.数据存储11、RUP设计阶段的主要活动不包含______。
A.程序设计B.体系结构设计C.用况设计D.类设计12、下列不属于软件危机的主要表现是______。
A.软件生产效率低B.软件开发没有工具支持C.软件生产质量低D.软件开发缺乏可遵循的原理、原则、方法体系以及有效的管理13、在销售管理系统需求文档中出现下列描述,属于设计约束范畴的是______。
《软件工程》11套考试复习练习题、作业题(含答案)

作业1:1. 软件是计算机系统中与硬件相互依存的另一部分,它是包括( A )、( B )及( C )的完整集合。
其中,( A )是按事先设计的功能和性能要求执行的指令序列。
( B )是使程序能够正确操纵信息的数据结构。
( C )是与程序开发、维护和使用有关的图文材料。
供选择的答案:A~C. ①软件②程序③代码④硬件⑤文档⑥外设⑦数据⑧图表2. 开发软件时对提高软件开发人员工作效率至关重要的是( A )。
软件工程中描述生存周期的瀑布模型一般包括计划、( B )、设计、编码、测试、维护等几个阶段,其中设计阶段在管理上又可以依次分成( C )和( D )两步。
供选择的答案:A.①程序开发环境②操作系统的资源管理功能③程序人员数量④计算机的并行处理能力B.①需求分析②需求调查③可行性分析④问题定义C、D.①方案设计②代码设计③概要设计④数据设计⑤运行设计⑥详细设计⑦故障处理设计⑧软件体系结构设计3. 从供选择的答案中选出适当字句填入下列关于软件发展过程的叙述中的( )内。
有人将软件的发展过程划分为4个阶段:第一阶段(1950~1950年代末)称为“程序设计的原始时期”,这时既没有( A ),也没有( B ),程序员只能用机器指令编写程序。
第二阶段(1950年代末~1960年代末)称为“基本软件期”。
出现了( A ),并逐渐普及。
随着( B )的发展,编译技术也有较大的发展。
第三阶段(1960年代末~1970年代中期)称为“程序设计方法时代”。
这一时期,与硬件费用下降相反,软件开发费急剧上升。
人们提出了( C )和( D )等程序设计方法,设法降低软件的开发费用。
第四阶段(1970年代中期~现在)称为“软件工程时期”。
软件开发技术不再仅仅是程序设计技术,而是包括了与软件开发的各个阶段,如( E )、( F )、编码、单元测试、综合测试、(G )及其整体有关的各种管理技术。
供选择的答案:A ~ D:①汇编语言②操作系统③虚拟存储器概念④高级语言⑤结构式程序设计⑥数据库概念⑦固件⑧模块化程序设计E ~ G:①使用和维护②兼容性的确认③完整性的确认④设计⑤需求定义⑥图象处理4. 软件工程过程有哪几个基本过程活动?试说明之。
最新软件工程考试题库(含答案和解析)

最新软件工程考试题库(含答案和解析)一、选择题1. 以下哪个不是软件工程的三个基本目标之一?A. 可维护性B. 可靠性C. 可用性D. 低成本答案:D解析:软件工程的三个基本目标是可维护性、可靠性和可用性。
低成本虽然也是一个重要的考虑因素,但并不是软件工程的基本目标。
2. 以下哪种编程范式主要用于降低软件复杂性?A. 面向对象编程B. 过程式编程C. 函数式编程D. 逻辑编程答案:A解析:面向对象编程(OOP)通过将数据和操作数据的方法封装在一起,降低了软件复杂性,提高了代码的可重用性和可维护性。
3. 软件开发过程中,以下哪个阶段需要进行需求分析?A. 设计阶段B. 编码阶段C. 测试阶段D. 需求分析阶段答案:D解析:需求分析是软件开发过程中的第一个阶段,其主要任务是明确软件系统的功能、性能等需求。
4. 以下哪个软件工程方法主要关注软件项目的管理?A. 敏捷开发B. ScrumC. UMLD. 设计模式答案:B解析:Scrum 是一种敏捷开发方法,主要关注软件项目的管理和团队协作。
UML(统一建模语言)主要用于软件设计,设计模式主要用于解决软件设计中的常见问题。
5. 以下哪个软件工具主要用于版本控制?A. GitB. EclipseC. JiraD. Visual Studio答案:A解析:Git 是一款分布式版本控制系统,主要用于跟踪和管理软件开发过程中的代码变更。
二、填空题1. 软件工程的基本活动包括______、______、______和______。
答案:需求分析、设计、编码、测试2. 敏捷开发的核心价值观包括______、______、______、______和______。
答案:个体和互动、工作软件、客户协作、响应变化、持续交付3. 软件开发过程中,常用的设计模式包括______、______、______、______和______。
答案:工厂模式、单例模式、策略模式、装饰模式、观察者模式4. 软件测试的目的是______、______和______。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
综合练习(1)1、填空(每空0.5,共20分)(1)软件生命周期可划分为,和三个时期,通常把这3个时期再细分为8个阶段,它们是①、②、③、④、⑤、⑥、⑦和⑧,其中阶段的工作是8个阶段中最大的。
(2)可行性研究的任务是从、和等三个方面的研究。
(3)至少应该从、、、和等四个方面验证软件需求的正确性,其中和这两个方面的正确性必须有用户的积极参与才能验证,而且为了验证这两个方面的正确性往往需要开发。
(4)软件总体设计时应该遵循、、、、和等六条基本原理。
详细设计通常以技术为逻辑基础,因为从软件工程的观点看,是软件最重要的质量标准之一。
(5)软件测试的目的是,通常把测试方法分为和两大类。
因为通常不可能做到,所以精心设计是保证达到测试目的所必须的。
(6)面向对象方法用分解取代了传统方法的分解。
(7)在面向对象的软件中,是对具有相同数据和相同操作的一组相似对象的定义;是由某个特定的类所描述的一个具体对象。
2、按下述要求完成给出的程序流程图,即在答案栏内写出图中A,B,C,D,E的正确内容。
(每栏3分,共15分)给程序输入二维数组W(I,J),其中I≤M,J≤N(M和N均为正整数)。
程序打印出数组中绝对值最小的元素值Q=W(K,L),及其下标K,L的值。
假定数组中仅有一个绝对值最小的元素。
应该完成的程序流程图如图A.1所示。
【答案栏】A:B:C:D:E:3、下面给出了用盒图(见图A.2)描述的一个程序的算法,请用逻辑覆盖法设计测试方案,要求做到语句覆盖和路径覆盖。
(共15分)图A.2 用盒图描绘的算法4、某高校可用的电话号码有以下几类:校内电话号码由4位数字组成,第1位数字不是0;校外电话又分为本市电话和外地电话两类,拨校外电话需先拨0,如果是本市电话再接着拨8位电话号码(第一位不是0),如果是外地电话则先拨区码(3-5位数字),在拨当地电话号码(7或8位数字,第1位不是0)。
请定义上述的电话号码。
(共15分)5、请说明多态重用与继承重用的关系。
(共15分)6、请建立下述的图书馆馆藏出版物的对象模型。
(共20分)一家图书馆藏有书籍、杂志、小册子、电影录像带,音乐CD、录音图书磁带和报纸等出版物,供读者借阅。
这些出版物有出版物名,出版者,获得日期,目录编号,书架位置,借出状态和借出限制等属性,并有借出,收回等服务。
图A.1 要求完成的程序流程图综合练习(2)1、将下列各对事物之间的关系(继承、聚集或一般关系)写在括弧内。
(共10分)(1)小汽车——富康牌小汽车( )(2)人员——雇员( )(3)图书馆——期刊阅览室( )(4)书——图书管理员( )(5)小汽车——司机( )(6)读者——借出的书( )(7)班级——学生( )(8)教师——教授( )(9)丈夫——妻子( )(10)列车——餐车( )2、判断下列各项是类还是类的实例,答案写在括弧内。
(共10分)(1)我的小汽车( )(2)人员( )(3)王晓明( )(4)交通工具( )(5)教授( )(6)计算机系( )(7)中国工人( )(8)清华大学学生( )(9)日本国( )(10)喷气式战机( )3、从供选择的答案中选出在下列叙述中括弧内字母该代表的正确内容,把答案写在答案栏内。
(共10分)(1)一组语句在程序的多处出现,为了节省内存空间吧这词儿语句放在一个模块中,该模块的内聚度是(A)的。
(2)将几个逻辑上相似的成分放在一个人模块中,该模块的内聚度是(B)的。
(3)模块中所有成分都使用共同的数据,该模块的内聚度是(C)的。
(4)模块内某些成分的输出是另一些成分的输入,该模块的内聚度是(D)的。
(5)模块中所有成分结合起来完成单独一向任务,该模块的内聚度是(E)的。
它具有简明的外部界面,有它构成的软件易于理解,测试和维护。
【供选择的答案】A~E 1、功能性2、顺序性3、通信性4、过程性5、偶然性6、瞬时性7、逻辑性【答案栏】A: B:C: D:E:4、图A.3是用程序流程图描绘的处理算法,请把它改画为等价的盒图。
(共10分)图A.3 程序流程图5、有一个长度为48000条机器指令的程序,第一个月有甲乙二人分别测试它。
甲改正了20个错误,是程序的无故障时间达到了8个小时。
乙在测试该程序的另一个副本时改正了24个错误,其中6个错误与甲改正的相同。
然后,有甲一个人继续测试这个程序。
请问(共20分)(1)刚开始测试时程序中的错误总数E T是多少?(2)为使平均无故障时间达到240h,如果甲不利用乙的工作成果,则他还需要再改正多少个错误?(3)为使平均无故障时间达到480h,如果甲利用了乙的工作成果,则他还需要改正多少个错误?6、办公室复印机的工作过程大致如下:未接到复印机命令时处于闲置状态,一旦接到辅以命令则进入复印状态,完成一个复印命令规定的工作后又回到闲置状态,等待下一个复印命令;如果执行复印命令时发现缺纸,则进入缺纸状态,发出警告,等待装纸,装满纸后进入闲置状态,准备接受复印命令;如果复印时发生卡纸故障,则进入卡纸状态,发出警告等待维修人员来排除故障,故障排除后回到闲置状态。
请用状态转换图描绘复印机的行为。
(共20分)7、请建立下述杂货店问题的对象模型。
(共20分)一家杂货店想使其库存管理自动化。
这家杂货店拥有能记录顾客购买的所有商品的名称和数量的销售终端。
顾客服务台也有类似的终端,以处理顾客的退货。
它在码头有另外一个终端用于处理供应商发货。
肉食部和农产品部所有终端用于输入由于损耗导致的损失和折扣。
综合练习(3)1、判断下述提高软件可维护性的措施是否正确,正确的在括弧内写对,错的写错。
(共10分)(1)在进行需求分析是同时考虑维护问题。
( ) (2)完成测试后,为缩短源程序长度而删去程序中的注解。
( ) (3)尽可能在软件开发过程中保证各阶段的文档的正确性。
( ) (4)编码时尽可能使用全局变量。
( ) (5)选择时间按效率和空间效率尽可能高的算法。
( ) (6)尽可能利用硬件的特点以提高效率。
( ) (7)重视程序结构的设计,使程序具有较好的层次结构。
( ) (8)使用维护工具或软件工程环境。
( ) (9)进行概要设计时量使用高级语言编程。
( ) (10)提高程序可读性,尽量使用该机语言编程。
( ) 2.为开发一个路自动售票系统(该系统预计从2004年使用到2014年),请完成下面的数据流图(见图A.4)和数据字典,即从供选择的答案中选出A、B、C、D和E的内容,并给出F、G的内容,填在答案栏中。
(共20分)(1) 数据流图图A.4 铁路自动售票系统数据流图[供选择的答案]A-E ①车次表;②接受;③售票记录;④购票请求;⑤拒绝。
(2)数据字典购票请求=F乘车日期=G到站=4{字母}20字母=[“A”..“Z”!“a”..“z”]车次=“001”..“999”拒绝=[无车次|无票]无车次=“no train”无票=“no ticket”接受=“to sale”已收款=“yes”车次表={起站+止站+车次}起站=止站=到站售票记录={乘车日期+起站+止站+车次+座号}座号=车厢号+座位号车厢号=“01”..“20”座位号=H注:①“01”..“20”表示数字范围从01到20②乘车日期应给出年、月、日,例如,2004/06/21;③假设每个车厢有100个座位。
[答案栏]A:B:C:D:E:3画出简化的文本编辑程序的用例图,该编辑程序的主要功能有,建立文件、打开文件、插入文件、修改文件和保存文件。
(共10分)4.图A.5所示的程序流程图描绘了一个非结构化的程序。
(共20分)(1)为什么说它是非结构化的?(2)利用附加变量FLAG,设计一个等价的结构化程序,用盒图描绘你的设计结果。
(3)不用附加变量,设计一个等价的结构化程序,用盒图描绘你的设计结果。
图A.5 非结构化程序5.画出图形用户界面(GUI)的状态转换图,该界面具有一个主菜单和一个带有文件打开命令的文件菜单,在每个菜单上都有一条退出命令。
假设每次只有一个文件能够打开。
(共20分)6.一个浮点二进制位,再跟上一个字符E,再加上另一个可选符号(+或-)及一个或多个二进制位。
浮点二进制数的形式化定义如下:<floating—point binary>::=[<sign>]<bitstring>E[<sign>]<bitstring><sign> ::=+|-<bitstring> ::=<bit>[<bitstring>]<bit> ::=0|1其中,符号::=表示定义为;符号[…]表示可选项;符号a|b表示a或b。
假设一个有穷状态机以一串字符为输入,根据浮点二进制数的定义判断输入的字符串是否是合法的浮点二进制数,请画出这个有穷状态机。
(共20分)。