1、国家二级 VF机试(程序设计基础、软件工程基础)模拟试卷 1及答案与解析 一、选择题 1 结构化程序设计的基本原则不包括 ( )。 ( A)多态性 ( B)自顶向下 ( C)模块化 ( D)逐步求精 2 结构化程序所要求的基本结构不包括 ( )。 ( A)顺序结构 ( B) GOTO跳转 ( C)选择 (分支 )结构 ( D)重复 (循环 )结构 3 结构化程序设计中,下面对 goto语句使用描述正确的是 ( )。 ( A)禁止使用 goto语句 ( B)使用 goto语句程序效率高 ( C)应 避免滥用 goto语句 ( D)以上说法均错误 4 下列选项中属于面向对象设计方法主要特征的是 (
2、 )。 ( A)继承 ( B)自顶向下 ( C)模块化 ( D)逐步求精 5 在面向对象方法中,不属于 “对象 ”基本特点的是 ( )。 ( A)一致性 ( B)分类性 ( C)多态性 ( D)标识唯一性 6 下面对对象概念描述正确的是 ( )。 ( A)对象间的通信靠消息传递 ( B)对象是名字和方法的封装体 ( C)任何对象必须有继承性 ( D)对象的多态性是指一个对象有多个操作 7 面向对象方法中,继承是指 ( )。 ( A)一组对象所具有的相似性质 ( B)一个对象具有另一个对象的性质 ( C)各对象之间的共同性质 ( D)类之间共享属性和操作的机制 8 构成计算机软件的是 ( )。
3、( A)源代码 ( B)程序和数据 ( C)程序和文档 ( D)程序、数据及相关文档 9 软件按功能可以分为:应用软件、系统软件和支撑软件 (或工具软件 )。下面属于应用软件的是 ( )。 ( A)编译程序 ( B)操作系统 ( C)教务管理系统 ( D)汇编程序 10 下面描述中,不属于软件危机表现的是 ( )。 ( A)软件过程不规范 ( B)软件开发生产率低 ( C)软件质量难以控制 ( D)软件成本不断提高 11 软件生命周期是指 ( )。 ( A)软件产品从提出、实现、使用维护到停止使用退役的过程 ( B)软件从需求分析、设计、实现到测试完成的过程 ( C)软件的开发过程 ( D)软
4、件的运行维护过程 12 软件生命周期虫的活动丕包括 ( )。 ( A)市场调研 ( B)需求分析 ( C)软件测试 ( D)软件维护 13 在下列模式中, 能够给出数据库物理存储结构与物理存取方法的是 ( )。 ( A)外模式 ( B)内模式 ( C)概念模式 ( D)逻辑模式 14 在软件开发中,需求分析阶段产生的主要文档是 ( )。 ( A)可行性分析报告 ( B)软件需求规格说明书 ( C)概要设计说明书 ( D)集成测试计划 15 下面不属于需求分析阶段任务的是 ( )。 ( A)确定软件系统的功能需求 ( B)确定软件系统的性能需求 ( C)需求规格说明书评审 ( D)制定软件集成测
5、试计划 16 下面不属于软件需求分析阶 段主要工作的是 ( )。 ( A)需求变更申请 ( B)需求分析 ( C)需求评审 ( D)需求获取 17 在软件开发中,需求分析阶段可以使用的工具是 ( )。 ( A) NS图 ( B) DFD图 ( C) PAD图 ( D)程序流程图 18 下面不能作为结构化方法软件需求分析工具的是 ( )。 ( A)系统结构图 ( B)数据字典 (DD) ( C)数据流图 (DFD图 ) ( D)判定表 19 数据流图中带有箭头的线段表示的是 ( )。 ( A)控制流 ( B)事件驱动 ( C)模块调用 ( D)数据流 20 数据字典 (DD)所定义的对象都包含于
6、 ( )。 ( A)数据流图 (DFD图 ) ( B)程序流程图 ( C)软件结构图 ( D)方框图 21 软件生命周期可分为定义阶段、开发阶段和维护阶段,下面不属于开发阶段任务的是 ( )。 ( A)测试 ( B)设计 ( C)可行性研究 ( D)实现 22 软件需求规格说明书的作用不包括 ( )。 ( A)软件验收的依据 ( B)用户与开发人员对软件要做什么的共同理解 ( C)软件设计的依据 ( D)软件可 行性研究的依据 23 下面描述中错误的是 ( )。 ( A)系统总体结构图支持软件系统的详细设计 ( B)软件设计是将软件需求转换为软件表示的过程 ( C)数据结构与数据库设计是软件设
7、计的任务之一 ( D) PAD图是软件详细设计的表示工具 24 软件设计中模块划分应遵循的准则是 ( )。 ( A)低内聚低耦合 ( B)高内聚低耦合 ( C)低内聚高耦合 ( D)高内聚高耦合 25 下面不属于软件设计阶段任务的是 ( )。 ( A)软件总体设计 ( B)算法设计 ( C)制定软件 确认测试计划 ( D)数据库设计 26 耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是 ( )。 ( A)提高耦合性降低内聚性有利于提高模块的独立性 ( B)降低耦合性提高内聚性有利于提高模块的独立性 ( C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度 ( D)内聚性是指模
8、块间互相连接的紧密程度 27 在软件设计中不使用的工具是 ( )。 ( A)系统结构图 ( B) PAD图 ( C)数据流图 (DFD图 ) ( D)程序流程图 28 软件详细设计生产的图如下: 该 图是 ( )。 ( A) NS图 ( B) PAD图 ( C)程序流程图 ( D) ER图 29 程序流程图中带有箭头的线段表示的是 ( )。 ( A)图元关系 ( B)数据流 ( C)控制流 ( D)调用关系 30 下面叙述中错误的是 ( )。 ( A)软件测试的目的是发现错误并改正错误 ( B)对被调试的程序进行 “错误定位 ”是程序调试的必要步骤 ( C)程序调试通常也称为 Debug (
9、D)软件测试应严格执行测试计划,排除测试的随意性 31 软件测试的目的是 ( )。 ( A)评估软件可靠性 ( B)发现并改正程序中的错误 ( C)改正程序中的错误 ( D)发现程序中的错误 32 下面属于黑盒测试方法的是 ( )。 ( A)语句覆盖 ( B)逻辑覆盖 ( C)边界值分析 ( D)路径覆盖 33 在黑盒测试方法中,设计测试用例的主要根据是 ( )。 ( A)程序内部逻辑 ( B)程序外部功能 ( C)程序数据结构 ( D)程序流程图 34 下面属于白盒测试方法的是 ( )。 ( A)等价类划分法 ( B)逻辑覆盖 ( C)边界值分析法 ( D)错误推 测法 35 下面不属于软件
10、测试实施步骤的是 ( )。 ( A)集成测试 ( B)回归测试 ( C)确认测试 ( D)单元测试 36 程序调试的任务是 ( )。 ( A)设计测试用例 ( B)验证程序的正确性 ( C)发现程序中的错误 ( D)诊断和改正程序中的错误 国家二级 VF机试(程序设计基础、软件工程基础)模拟试卷 1答案与解析 一、选择题 1 【正确答案】 A 【试题解析】 结构化程序设计的思想包括:自顶向下、逐步求精、模块化、限制使用 goto语句,所以选择 A。 【知识模块】 程序设计基础 2 【正确答案】 B 【试题解析】 1966年, Boehm和 Jacopini证明了程序设计语言仅仅使用顺序、选择和
11、重复三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。 【知识模块】 程序设计基础 3 【正确答案】 C 【试题解析】 结构化程序设计中,要注意尽量避免 goto语句的使用,故选 C。 【知识模块】 程序设计基础 4 【正确答案】 A 【试题解析】 面向对象基本方法的基本概念有对象、类和实例、消息、继承与多态性,所以选择 A。 【知识模块】 程序设计基础 5 【正确答案】 A 【试题解析】 对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。所以选择 A。 【知识模块】 程序设计基础 6 【正确答案】 A 【试题解析】 对象之间进行通信的构造叫做消息, A正确。
12、多态性是指同一个操作可以是不同对象的行为, D错误。对象不一定必须有继承性, C错误。封装性是指从外面看只能看到对象的外部特征,而不知道也无须知道数据的具体结构以及实现操作, B错误。 【知识模块】 程序设计基础 7 【正确答案】 D 【试题解析】 继承是面向对象方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制。 【知识模块】 程序设计基础 8 【正确答案】 D 【试题解析】 软件指的是计算机系统中与硬件相互依赖的另一部分,包括程序、数据和有关的文档,选 D。 【知识
13、模块】 软件工程基础 9 【正确答案】 C 【试题解析】 编译软件、操作系统、汇编程序都属于系统软件,只有教务管理系统才是应用软件。 【知识模块】 软件工程基础 10 【正确答案】 A 【试题解析】 软件危机主要表现在:软件需求的增长得不到满足;软件开发成本和进度无法控制;软件质量难以保证;软件不可维护或维护程度非常低;软件的成本不断提高;软件开发生产率的提高赶不上硬件的发展和应用需求的增长。所以选择 A。 【知识模块】 软件工程基础 11 【正确答案】 A 【试题解析】 通常,将软件产品从提出、实现、使用维护到停止 使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件
14、产品不能使用为止的整个时期都属于软件生命周期。 【知识模块】 软件工程基础 12 【正确答案】 A 【试题解析】 软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。主要活动阶段是:可行性研究与计划阶段,需求分析,软件设计,软件实现,软件测试,运行和维护,所以选择 A。 【知识模块】 软件工程基础 13 【正确答案】 B 【试题解析】 数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据物理存储结构与屋里存取方法,所以选择 B。 【知识模块】 软件工程基础
15、14 【正确答案】 B 【试题解析】 A错误,可行性分析阶段产生可行性分析报告。 C错误,概要设计说明书是总体设计阶段产生的文档。 D错误,集成测试计划是在概要设计阶段编写的文档。 B正确,需求规格说明书是后续工作如设计、编码等重要的参考文档。 【知识模块】 软件工程基础 15 【正确答案】 D 【试题解析】 需求分析阶段的工作有:需求获取;需求分析;编写需求规格说明书;需求评审,所以选择 D。 【知识模块】 软件工程基础 16 【正确答案】 A 【试题解析】 需求分析阶段的工作可概括为四个方面: 需求获取。 需求分析。 编写需求规格说明书。 需求审评。 【知识模块】 软件工程基础 17 【正
16、确答案】 B 【试题解析】 在需求分析阶段可以使用的工具有数据流图 DFD图,数据字典DD,判定树与判定表,所以选择 B。 【知识模块】 软件工程基础 18 【正确答案】 A 【试题解析】 结构化方法软件需求分析工具主要有数据流图、数据字典、判定树和判定表。 【知识模块】 软件工程基础 19 【正确答案】 D 【试题解析】 数据流图中带箭头的线段表示的是数据流,即沿箭头方向传送数据的通道,一般在旁边标注数据流名。 【知识模块】 软件工程基础 20 【正确答案】 A 【试题解析】 在数据流图中,对所有元素都进行了命名,所有名字的定义集中起来就构成了数据字典。因此选 A。 【知识模块】 软件工程基
17、础 21 【正确答案】 C 【 试题解析】 开发阶段包括分析、设计和实施两类任务。其中分析、设计包括需求分析、总体设计和详细设计 3个阶段,实施则包括编码和测试两个阶段, C不属于开发阶段。 【知识模块】 软件工程基础 22 【正确答案】 D 【试题解析】 软件需求规格说明书是需求分析阶段的最后成果,是软件开发的重要文档之一。软件需求规格说明书有以下几个方面的作用。 便于用户、开发人员进行理解和交流, B正确; 反映出用户问题的结构,可以作为软件开发工作的基础和依据, C正确; 作为确认测试和验收的依据, A正确。 【知识模块 】 软件工程基础 23 【正确答案】 A 【试题解析】 详细设计的
18、任务是为软件结构图中而非总体结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节,所以 A错误。 【知识模块】 软件工程基础 24 【正确答案】 B 【试题解析】 软件设计中模块划分应遵循的准则是高内聚低耦合、模块大小规模适当、模块的依赖关系适当等。模块的划分应遵循一定的要求,以保证模块划分合理,并进一步保证以此为依据开发出的软件系统可靠性强,易于理解和维护。模块之间的耦合应尽可 能的低,模块的内聚度应尽可能的高。 【知识模块】 软件工程基础 25 【正确答案】 C 【试题解析】 从技术观点上看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。所
19、以 A、 B、 D正确, C为软件测试阶段的任务。 【知识模块】 软件工程基础 26 【正确答案】 B 【试题解析】 模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。一般较优秀的软件设计,应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块 的独立性,所以 A错误, B正确。耦合性是模块闯互相连接的紧密程度的度量,而内聚性是指一个模块内部各个元素间同彼此结合的紧密程度,所以 C与 D错误。 【知识模块】 软件工程基础 27 【正确答案】 C 【试题解析】 系统结构图是对软件系统结构的总体设计的图形显示。在需求分析阶段,已经
20、从系统开发的角度出发,把系统按功能逐次分割成层次结构,是在概要设计阶段用到的。 PAD图是在详细设计阶段用到的。程序流程图是对程序流程的图形表示,在详细设计过程中用到。数据流图是结构化分析方法中使用的工具,它以图形的方式 描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,所以它是一种功能模型,是在可行性研究阶段用到的,而非软件设计时用到,所以选择 C。 【知识模块】 软件工程基础 28 【正确答案】 C 【试题解析】 N s图提出了用方框图来代替传统的程序流程图,所以 A)不对。PAD图是问题分析图,它是继承程序流程图和方框图之后提出的又一种主要用于描述软件详细设计的图形表
21、示工具,所以 B)不对。 E R图是数据库中的用于表示E R模型的图示工具,所以 D)不对。根据图中所示表示方法是进行软件详细设计时使用的程序流程图。 【知识模块】 软件工程基础 29 【正确答案】 C 【试题解析】 在数据流图中,用标有名字的箭头表示数据流。在程序流程图中,用标有名字的箭头表示控制流。所以选择 C。 【知识模块】 软件工程基础 30 【正确答案】 A 【试题解析】 软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误,所以选项 A错误。程序调试的基本步骤有:错误定位、修改设计和代码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为 Debug,即排错。软
22、件测试的基本准 则有:所有测试都应追溯到需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。 【知识模块】 软件工程基础 31 【正确答案】 D 【试题解析】 软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能。不是为了评估软件或改正错误。 【知识模块】 软件工程基础 32 【正确答案】 C 【试题解析】 黑盒测试不关心程序内部的逻辑,只是根据程序的功能说明来设计测试 用例。在使用黑盒测试法时,手头只需要有程序功能说明就可以了。黑盒测试法分等价类划分法、边界值分析法和错
23、误推测法,答案为 C。而 A、 B、 D均为白盒测试方法。 【知识模块】 软件工程基础 33 【正确答案】 B 【试题解析】 黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证,黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能说明,所以本题选择 B。 【知识模块】 软件工程基础 34 【正确答案】 B 【试题解析】 白 盒测试法主要有逻辑覆盖、基本路径测试等。逻辑覆盖测试包括语句覆盖、路径覆盖、判定覆盖、条件覆盖、判断一条件覆盖,选择 B。其余为黑盒测试法。 【知识模块】 软件工程基础 35 【正确答案】 B 【试题解析】 软件测试主要包括单元测试、集成测试、确认测试和系统测试。 【知识模块】 软件工程基础 36 【正确答案】 D 【试题解析】 程序调试的任务是诊断和改正程序中的错误。 【知识模块】 软件工程基础