二级公共基础知识软件工程基础模拟题
[模拟] 二级公共基础知识软件工程基础单项选择题第1题:软件按功能可以分为:应用软件、系统软件、支撑软件(或工具软件),下面属于应用软件的是______。
A.编译程序B.操作系统C.教务管理系统D.汇编程序参考答案:C操作系统属于系统软件,编泽程序与汇编程序都属于支撑软件,而教务管理系统是属于应用软件的。
第2题:软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
下面属于系统软件的是______。
A.编辑软件B.操作系统C.教务管理系统D.浏览器参考答案:B本题考查的知识点是软件的分类。
软件按功能可以分为:应用软件、系统软件和支撑软件(或工具软件)。
操作系统是系统软件。
即本题的答案为B。
第3题:软件是指______。
A.程序B.程序和文档C.算法加数据结构D.程序、数据与相关文档参考答案:D计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。
可见软件由两大部分组成:一是机器可执行的程序和数据;二是机器不可执行的,与软件开发、运行、维护和使用等有关的文档。
第4题:下列选项中不属于软件生命周期开发阶段任务的是______。
A.软件测试B.概要设计C.软件维护D.详细设计软件生命周期分为软件定义、软件开发及软件维护。
其中软件开发阶段的任务中软件设计阶段可分解成概要设计阶段和详细设计阶段;软件维护不属于软件开发阶段。
第5题:下列描述中正确的是______。
A.软件工程只是解决软件项目的管理问题B.软件工程主要解决软件产品的生产率问题C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则D.软件工程只是解决软件开发中的技术问题参考答案:C软件工程是计算机软件开发和维护的工程学科,它采用工程的概念原理、技术和方法来开发和维护软件,它把经过时间考验而证明正确的管理技术和当前能够得到的最好技术结合起来。
第6题:下面描述中,不属于软件危机表现的是______。
A.软件过程不规范B.软件开发生产率低C.软件质量难以控制D.软件成本不断提高参考答案:B软件的危机表现包括:①用户对已完成的软件系统不满意;②软件产品质量不过关;③软件常常不可维护;④软件通常没有适当的文档;⑤对软件开发的进度和经费估计不准。
第7题:下列叙述中正确的是______。
A.软件交付使用后还需要进行维护B.软件一旦交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令参考答案:A软件的运行和维护是指将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
而软件生命周期是指软件产品从提出、实现、使用维护到停止使用退役的过程。
第8题:下列描述中正确的是______。
A.程序就是软件B.软件开发不受计算机系统的限制C.软件既是逻辑实体,又是物理实体D.软件是程序、数据与相关文档的集合计算机软件是计算机系统中与硬件相互依存的另一部分,是包括程序、数据及相关文档的完整集合。
软件具有以下特点:①软件是一种逻辑实体,而不是物理实体,具有抽象性;②软件的生产过程与硬件不同,它没有明显的制作过程;③软件在运行、使用期间不存在磨损、老化问题;④软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致软件移植的问题;⑤软件复杂性高,成本昂贵;⑥软件开发涉及诸多的社会因素。
第9题:软件工程产生的主要原因是______。
A.程序设计方法学的影响B.软件危机的出现C.其他工程科学的影响D.计算机的发展参考答案:B1968年秋季,NATO(北约)的科技委员会召集了近50名一流的编程人员、计算机科学家和工业界巨头,讨论和制定摆脱“软件危机”的对策。
在那次会议上第一次提出了软件工程(Software Engineering)这个概念。
迄今为止,软件工程整整走过了40多年的历程。
在这40多年的发展中,人们针对软件危机的表现和原因,经过不断的实践和总结,越来越认识到:按照工程化的原则和方法组织软件开发工作,是摆脱软件危机的一个主要出路。
第10题:软件生命周期划分可行性研究和需求分析、设计、实现、测试、交付使用和维护等几个阶段。
这几个阶段又可以归纳为三个大的阶段:计划阶段、开发阶段和______。
A.详细设计阶段B.测试阶段C.维护阶段D.可行性分析阶段参考答案:C软件生命周期的几个阶段又可以归纳为三个大的阶段:定义阶段、开发阶段和维护阶段。
第11题:软件生命周期是指______。
A.软件产品从提出、实现、使用维护到停止使用退役的过程B.软件从需求分析、设计、实现到测试完成的过程C.软件的开发过程D.软件的运行维护过程参考答案:A软件生命周期的定义是通常将软件产品从提出、实现、使用维护到停止使用而退役的过程。
还可将软件周期分为三阶段:定义阶段、开发阶段和维护阶段。
软件生命周期可分为定义阶段、开发阶段和维护阶段。
详细设计属于______。
A.定义阶段B.开发阶段C.维护阶段D.上述三个阶段参考答案:B本题考查的知识点是软件生命周期。
软件生命周期可分为定义阶段,开发阶段和维护阶段。
详细设计属于开发阶段的任务。
即本题的答案为B。
第13题:数据流图中带有箭头的线段表示的是______。
A.控制流B.事件驱动C.模块调用D.数据流参考答案:D数据流图是描述数据处理过程的工具,它从数据传递和加工的角度,来刻画数据流从输入到输出的移动变化过程。
数据流图中的主要图形元素有:○表示加工(转换),→表示数据流,=表示存储文件(数据源),□表示数据源和数据池。
第14题:在软件开发中,需求分析阶段可以使用的工具是______。
A.N-S图B.DFD图C.PAD图D.程序流程图参考答案:B结构化解析方法是常见的需求分析方法之一,它是结构化程序设计理论在软件需求解析阶段的运用,数据流图(Data Flow Diagram,DFD)是结构化解析常用的工具之一。
数据字典、判定树和判定表也是常用的结构化分析工具。
程序流程图、N-S图、PAD图是详细设计过程中常用的图形工具。
第15题:在软件开发中,需求分析阶段产生的主要文档是______。
A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测试计划参考答案:B软件需求规格说明书是需求分析阶段最后的成果,它作为需求解析的一部分而制定的可交付文档。
在概要设计阶段,需要编写的文档有:概要设计说明书、数据库说明书、集成测试计划等。
SA方法是面向______的自顶向下逐步求精进行需求分析的方法A.目标B.功能C.数据流D.对象参考答案:CSA方法,即结构化分析方法是面向数据流进行需求分析的方法,采用自顶向下、逐步求精建立系统的流程。
第17题:数据流程图(DFD图)是______。
A.软件概要设计的工具B.软件详细设计的工具C.结构化方法的需求分析工具D.面向对象方法的需求分析工具参考答案:C本题考查的知识点是数据流程图(DFD图)。
数据流程图(DFD图)是结构化方法的需求分析工具。
即本题的答案为C。
第18题:数据流图是常用的进行软件需求分析的图形工具,其基本图形符号是______。
A.输入、输出、外部实体和加工B.变换、加工、数据流和存储C.加工、数据流、数据存储和外部实体D.变换、数据存储、加工和数据流参考答案:C数据流图的主要图形元素包括4种,即加工、数据流、存储文件和外部实体。
第19题:数据字典是数据定义的信息集合,它所定义的对象都包含于______。
A.方框图B.数据流图C.软件结构D.程序框图参考答案:B数据字典是对数据定义的信息的集合,是结构化分析的核心。
数据字典是用来定义数据流图中各个成分具体含义的。
第20题:软件需求说明书是软件需求分析阶段的重要文件,下述是其应该包含的内容。
a、数据描述b、功能描述c、模块描述d、性能描述A.bB.c和dC.a,b和cD.a,b和d参考答案:D软件需求说明书的主要内容是:系统的数据描述、系统的功能描述、系统的性能捕述。
模块描述是在系统设计阶段形成的软件规格说明书中描述的,而不是在软件需求规格说明书中。
第21题:判定树和判定表是用于描述结构化分析方法中的______。
A.功能说明B.数据加工C.流程描述D.性能说明参考答案:B结构化分析方法是首先将系统逐层分解到基本加工,然后为每个基本加工写上加工说明。
理想的加工说明应该既严格精确,又容易被软件设计人员和用户理解。
结构化分析方法在精确性和可理解性之间进行了折中,它采用了结构化语言、判定表和判定树这3种半形式化方法编写加工说明。
当需要对加工说明时,常常遇到组合条件判断,这时利用IF-THEN-ELSE结构就比较困难,对问题的描述也不能做到清晰、易理解。
这时可以利用判定树,判定表与判定树一样,也是一种在说明加工时使用的描述组合条件的一种方法。
第22题:在结构化方法的软件需求定义中,可采用分析工具来辅助完成。
下列工具中,______是常用的工具。
Ⅰ.数据流图Ⅱ.结构图Ⅲ.数据字典Ⅳ.判定表A.Ⅰ和ⅢB.Ⅱ和ⅢC.Ⅰ、Ⅱ和ⅣD.Ⅰ、Ⅲ和Ⅳ参考答案:D结构图是软件总体设计过程中用到的工具,所以Ⅱ不在答案之列。
根据软件在生命周期中的活动过程,软件工具分为软件开发工具、软件维护工具、软件管理与软件支持工具。
这些工具是用来辅助软件开发、运行、维护、管理、支持等过程中的活动的。
软件分析工具是软件开发工具的一个分支,常用的工具主要有数据流图和数据字典。
判定表是数据字典中用于数据加工的一种方法。
A不够全面,B和C都不正确,因此本题选D。
第23题:软件设计中划分模块的一个准则是______。
A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合参考答案:B耦合性和内聚性是模块独立性的两个标准。
耦合性是模块间相互连接的紧密程度的度量,一个模块与其他模块的耦合性越强,则该模块的独立性越弱。
内聚性是一个模块内部各个元素彼此结合的紧密程度的度量,一个模块的内聚性越强则该模块的独立性就越强。
在程序结构中,各模块的内聚性越强,则耦合性就越弱。
一般较为优秀的软件设计,应尽量做到高内聚、低耦合。
第24题:耦合性和内聚性是对模块独立性度量的两个标准。
下列叙述中正确的是______。
A.提高耦合性降低内聚性有利于提高模块的独立性B.降低耦合性提高内聚性有利于提高模块的独立性C.耦合性是指一个模块内部各个元素间彼此结合的紧密程度D.内聚性是指模块间互相连接的紧密程度参考答案:B耦合性是指模块问互相连接的紧密程度,内聚性是指一个模块内部各个元素间彼此结合的紧密程度。
提高内聚,降低耦合有利于提高模块的独立性。
第25题:程序流程图中指有箭头的线段表示的是______。
A.图元关系B.数据流C.控制流D.调用关系参考答案:C程序流程图是软件过程设计中常用的图形描述工具之一。
全国计算机等级考试二级公共基础模拟试题及答案解析12套
计算机二级公共基础模拟试题一一、选择题(每小题2分)在下列各题的A),B),C),D),4个选项中,只有1个选项是正确选项添涂在答题卡相应位置上,答在试卷上不得分。
1.栈和队列的共同特点是( C )。
A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素C)没有共同点2.已知二叉树后序编历序列是dabec,中续遍历序列是debac,它的前序编历序列是( D )。
A)acbedB)decabC)deabcD)cebda33.链表不具有的特点是( B )。
A)不必事先估计存储空间B)可随机访问任一元素C)插入删除不需要的移动元素D)所需空间与线性长度4.结构化程序设计的3种结构是( D )。
A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值机构、等价结构D)顺序结构、选择结构、循环结构5.为了提高测试的效率。
应该( D )A)随即选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后指定软件的测试次数D)集中对付那些错误的群集的程序6.算法的时间复杂度是指( C )A)执行算法程序所需要的时间 B)算法程序的长度C)在完成编码以后指定软件的测试次数D)算法程序中的指定条数7.软件生命周期中花费用最多的阶段是( D )A)详细设计B)软件编码C)软件测试D)软件维护8.数据库管理系统DBMS中用来定义模拟、内模式和外模式的语言为( C )A)C B)Basic C)DDL D)DML9.下列有关数据库的描述,正确的是( C )A)数据库是一个DBF文件B)数据库是一个关系C)数据库是一个结构化的数据集合D)数据库是一组文件10.下列有关数据库的描述,正确的是( D )A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字节D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的键字,则称其为本关系的外关键字二、填空题(每空2分)请将每一个空的正确答案写在答题卡【11】~【15】序号的横线上,答案试卷上不得分。
国家二级公共基础知识(软件工程基础)模拟试卷1(题后含答案及解析)
国家二级公共基础知识(软件工程基础)模拟试卷1(题后含答案及解析)题型有:1. 选择题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.下列描述中正确的是A.软件交付使用后还需要再进行维护B.软件工具交付使用就不需要再进行维护C.软件交付使用后其生命周期就结束D.软件维护是指修复程序中被破坏的指令正确答案:A解析:通常将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。
软件生命周期分为软件定义、软件开发及软件运行维护三个阶段。
已交付的软件投入运行后,应在运行使用中不断地维护,根据新提出的需要进行必要而且可能的扩充和删改。
知识模块:软件工程基础2.下面不属于软件设计原则的是A.抽象B.模块化C.自底向上D.信息隐藏正确答案:C解析:软件设计的基本原则包括抽象、信息隐藏、模块化、局部化、确定性、一致性、完备性和可验证性。
知识模块:软件工程基础3.下面不属于软件需求分析阶段主要工作的是A.需求变更申请B.需求分析C.需求评审D.需求获取正确答案:A解析:在软件开发的过程中,应该尽早的制定测试计划,其中在需求分析阶段制定系统测试计划,在概要设计阶段制定集成测试计划,在详细设计阶段制定单元测试计划。
知识模块:软件工程基础4.下面不属于需求分析阶段任务的是A.确定软件系统的功能需求B.确定软件系统的性能需求C.需求规格说明书评审D.制定软件集成测试计划正确答案:D解析:需求分析阶段的工作可分为4个阶段:需求获取、需求分析、编写需求规格说明书、需求评审。
知识模块:软件工程基础5.在软件生命周期中,能准确确定软件系统必须做什么和必须具备哪些功能的阶段是A.概要设计B.详细设计C.可行性分析D.需求分析正确答案:D解析:软件需求是指用户对目标软件系统在功能、行为、设计约束等方面的期望。
需求分析的任务是发现需求、求精、建模和定义需求的过程。
知识模块:软件工程基础6.在软件开发中,需求分析阶段可以使用的工具是A.N-S图B.DFD图C.PAD图D.程序流程图正确答案:B解析:在软件开发中,需求分析阶段常使用的工具有数据流图(DFD),数据字典(DD)、判断树和判断表。
国家二级(公共基础知识)模拟试卷21(题后含答案及解析)
国家二级(公共基础知识)模拟试卷21(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.开发软件时对提高开发人员工作效率至关重要的是( )。
A.操作系统的资源管理功能B.先进的软件开发工具和环境C.程序人员的数量D.计算机的并行处理能力正确答案:B解析:软件工程鼓励研制和采用各种先进的软件开发方法、工具和环境。
工具和环境的使用又进一步提高了软件的开发效率、维护效率和软件质量。
2.算法分析的目的是( )。
A.找出数据结构的合理性B.找出算法中输入和输出之间的关系C.分析算法的易懂性和可靠性D.分析算法的效率以求改进正确答案:D解析:算法分析是指对一个算法的运行时间和占用空问做定量的分析,一般计算出相应的数量级,常用时间复杂度和空间复杂度表示。
分析算法的目的就是要降低算法的时间复杂度和空间复杂度,提高算法的执行效率。
3.线性表L=(α1,α2,α3,…,αi,…,αn),下列说法正确的是( )。
A.每个元素都有一个直接前件和直接后件B.线性表中至少要有一个元素C.表中诸元素的排列顺序必须是由小到大或由大到小D.除第一个元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件正确答案:D解析:线性表可以为空表;第一个元素没有直接前件,最后一个元素没有直接后件;线性表的定义中,元素的排列并没有规定大小顺序。
4.在单链表中,增加头结点的目的是( )。
A.方便运算的实现B.使单链表至少有一个结点C.标识表结点中首结点的位置D.说明单链表是线性表的链式存储实现正确答案:A解析:头结点不仅标识了表中首结点的位置,而且根据单链表(包含头结点)的结构,只要掌握了表头,就能够访问整个链表,因此增加头结点目的是为了便于运算的实现。
5.软件工程的出现是由于( )。
A.程序设计方法学的影响B.软件产业化的需要C.软件危机的出现D.计算机的发展正确答案:C解析:软件工程概念的出现源自于软件危机。
2023年全国计算机等级二级公共基础知识模拟试题2
2023年全国计算机等级二级公共根底知识模拟试题2023年全国计算机等级二级公共根底知识模拟试题(1)算法的时间复杂度是指______。
(C)A.执行算法程序所需要的时间B.算法程序的长度C.算法执行过程中所需要的根本运算次数D.算法程序中的指令条数(2)以下表达中正确的选项是______。
(A)A.线性表是线性构造B.栈与队列是非线性构造C.线性链表是非线性构造D.二叉树是线性构造(3)设一棵完全二叉树共有699个结点,考试大提示那么在该二叉树中的叶子结点数为______。
(B)A.349B.350C.255D.351(4)构造化程序设计主要强调的是______。
(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的.可移植性(5)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是______。
(D)A.概要设计B.详细设计C.可行性分析D.需求分析(6)数据流图用于抽象描绘一个软件的逻辑模型,数据流图由一些特定的图符构成。
以下列图符名标识的图符不属于数据流图合法图符的是______。
(A)A.控制流B.加工C.数据存储D.和潭(7)软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及______。
(B)A.阶段性报告B.需求评审C.总结D.都不正确(8)下述关于数据库系统的表达中正确的选项是______。
(A)A.数据库系统减少了数据冗余B.数据库系统防止了一切冗余C.数据库系统中数据的一致性是指数据类型的一致D.数据库系统比文件系统能管理更多的数据(9)关系表中的每一横行称为一个______。
(A)A.元组B.字段C.属性D.码(10)数据库设计包括两个方面的设计内容,它们是______。
(A)A.概念设计和逻辑设计B.形式设计和内形式设计C.内形式设计和物理设D.构造特性设计和行为特性设计。
国家二级Python(软件工程基础)模拟试卷1(题后含答案及解析)
国家二级Python(软件工程基础)模拟试卷1(题后含答案及解析) 题型有:1. 单项选择题单项选择题1.在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是A.概要设计B.详细设计C.可行性分析D.需求分析正确答案:D 涉及知识点:软件工程基础2.软件工程三要素中不包括A.工具B.过程C.方法D.环境正确答案:D 涉及知识点:软件工程基础3.检查软件产品是否符合需求定义的测试是A.确认测试B.集成测试C.验证测试D.系统测试正确答案:A 涉及知识点:软件工程基础4.软件调试的目的是A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能正确答案:B 涉及知识点:软件工程基础5.以下选项中,不属于软件调试技术的是A.强行排错法B.集成测试法C.回溯法D.原因排除法正确答案:B 涉及知识点:软件工程基础6.软件需求规格说明书的作用不包括A.便于用户、开发人员进行理解和交流B.反映出用户问题的结构,可以作为软件开发工作的基础和依据C.作为确认测试和验收的依据D.只便于开发人员进行需求分析正确答案:D 涉及知识点:软件工程基础7.SQL语言的全称是A.结构化定义语言B.结构化控制语言C.结构化查询语言D.结构化操纵语言正确答案:C 涉及知识点:软件工程基础8.软件测试实施步骤中不包括A.集成测试B.确认测试C.单元测试D.回归测试正确答案:D 涉及知识点:软件工程基础9.软件设计包括软件的结构、数据接口和过程设计,下列选项中属于软件的过程设计的是A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程正确答案:B 涉及知识点:软件工程基础10.为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,这种图的名称是A.PAD图B.N—S图C.结构图D.数据流图正确答案:B 涉及知识点:软件工程基础11.需求分析阶段的任务是确定A.软件开发方法B.软件开发工具C.软件开发费用D.软件系统功能正确答案:D 涉及知识点:软件工程基础12.在软件工程中,白盒测试法可用于测试程序的内部结构。
二级考试公共基础知识模拟题10套答案
第一套试题解析1、解析:栈和队列都是一种特殊的操作受限的线性表,只允许在端点处进行插入和删除。
二者的区别是:栈只允许在表的一端进行插入或删除操作,是一种“后进先出”的线性表;而队列只允许在表的一端进行插入操作,在另一端进行删除操作,是一种“先进先出”的线性表。
2、解析:依据后序遍历序列可确定根结点为c;再依据中序遍历序列可知其左子树由deba 构成,右子树为空;又由左子树的后序遍历序列可知其根结点为e,由中序遍历序列可知其左子树为d,右子树由ba构成,如下图所示。
求得该二叉树的前序遍历序列为选项D)。
3、解析:链表采用的是链式存储结构,它克服了顺序存储结构的缺点:它的结点空间可以动态申请和释放;它的数据元素的逻辑次序靠结点的指针来指示,不需要移动数据元素。
但是链式存储结构也有不足之处:①每个结点中的指针域需额外占用存储空间;②链式存储结构是一种非随机存储结构。
4、解析:顺序结构、选择结构和循环结构(或重复结构)是结构化程序设计的3种基本结构。
5、解析:测试的目的是发现软件中的错误。
经验表明,程序中存在错误的概率与该程序中已发现的错误数成正比。
这一现象说明,为了提高测试效率,测试人员应该集中对付那些错误群集的程序。
6、解析:算法的复杂度主要包括算法的时间复杂度和算法的空间复杂度。
所谓算法的时间复杂度是指执行算法所需要的计算工作量;算法的空间复杂度一般是指执行这个算法所需要的内存空间。
7、解析:软件生命周期分为软件定义、软件开发及软件运行维护3个阶段。
本题中,详细设计、软件编码和软件测试都属于软件开发阶段;维护是软件生命周期的最后一个阶段,也是持续时间最长,花费代价最大的一个阶段,软件工程学的一个目的就是提高软件的可维护性,降低维护的代价。
8、解析:选项A)、B)显然不合题意。
数据定义语言(Data Definition Language,简称DDL)负责数据的模式定义与数据的物理存取构建;数据操纵语言(Data Manipulation Language,简称DML)负责数据的操纵,包括查询及增、删、改等操作。
国家二级公共基础知识(数据结构与算法、软件工程基础)模拟试卷
国家二级公共基础知识(数据结构与算法、软件工程基础)模拟试卷1(题后含答案及解析)题型有:1. 选择题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.下列叙述中正确的是A.对长度为n的有序链表进行查找,最坏情况下需要的比较次数为nB.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n /2)C.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n)D.对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n)正确答案:A解析:本题主要考查的知识点为查找技术。
顺序查找的使用情况:①线性表为无序表;②表采用链式存储结构。
二分法查找只适用于顺序存储的有序表,并不适用于线性链表。
知识模块:数据结构与算法2.在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是A.O(n)B.0(n2)C.O(log2n)D.O(nlog2n)正确答案:C解析:对于长度为n的有序线性表,在最坏情况下,二分法查找只需比较log2n次,而顺序查找需要比较n次。
知识模块:数据结构与算法3.下列数据结构中,能用二分法进行查找的是A.顺序存储的有序线性表B.线性链表C.二叉链表D.有序线性链表正确答案:A解析:二分法查找只适应于顺序存储的有序表。
有序表是指线性表中的元素按值非递减排序(即从小到大,但允许相邻元素值相等)的表。
知识模块:数据结构与算法4.冒泡排序在最坏情况下的比较次数是A.n(n+1)/2B.nlog2nC.n(n一1)/2D.n/2正确答案:C解析:对n个结点的线性表采用冒泡排序,在最坏情况下,冒泡排序需要经过n/2遍的从前往后的扫描和n/2遍的从后往前的扫描,需要的比较次数为n(n-1)/2。
知识模块:数据结构与算法5.对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为A.9B.10C.45D.90正确答案:C解析:线性表的长度为n,最坏情况下冒泡排序需要比较的次数为n(n-1)/2。
国家二级(公共基础知识)模拟试卷4(题后含答案及解析)
国家二级(公共基础知识)模拟试卷4(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.在深度为5的满二叉树中,叶子结点的个数为______。
A.32B.31C.16D.15正确答案:B解析:所谓满二叉树是指这样的一种二叉树:除最后一层外,每一层上的所有结点都有两个叶子结点。
这就是说,在满二叉树中,层上的结点数都达到最大值,即在满二叉树的第K层上有2k-1个结点,且深度为m的满二义树有2m-1个结点。
2.软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指______。
A.模块间的关系B.系统结构部件转换成软件的过程描述C.软件层次结构D.软件开发过程正确答案:B解析:软件设计包括软件结构设计、数据设计、接口设计和过程设计。
其中结构设计是定义软件系统各主要部件之间的关系;数据设计是将分析时创建的模型转化为数据结构的定义;接口设计是描述软件内部、软件和操作系统之间及软件与人之间如何通信;过程设计则是把系统结构部件转换成软件的过程性描述。
3.下列不属于软件工程的3个要素的是______。
A.工具B.过程C.方法D.环境正确答案:D解析:软件工程包括3个要素,即方法、工具和过程。
方法是完成软件工程项目的技术手段;工具支持软件的开发、管理、文档生成;过程支持软件开发的各个环节的控制、管理。
4.结构化程序设计主要强调的是______。
A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性正确答案:D解析:结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化及限制使用goto语句,总的来说就是使程序结构良好、易读、易理解、易维护。
5.如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是______。
A.e3、e1、e4、e2B.e2、e4、e3、e1C.e3、e4、e1、e2D.任意顺序正确答案:B解析:由栈“后进先出”的特点可知:A中e1不可能比e2先出,C中e3不可能比e4先出,且e1不可能比e2先出,D中栈是先进后出的,所以不可能是任意顺序。
国家二级公共基础知识程序设计基础软件工程基础模拟试卷10_真题-无答案
国家二级公共基础知识(程序设计基础、软件工程基础)模拟试卷10(总分70,考试时间90分钟)1. 选择题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1. 下列叙述中正确的是A. 程序执行的效率与数据的存储结构密切相关B. 程序执行的效率只取决于程序的控制结构C. 程序执行的效率只取决于所处理的数据量D. 以上都不正确2. 下列描述中,不符合良好程序设计风格要求的是A. 程序的效率第一,清晰第二B. 程序的可读性好C. 程序中要有必要的注释D. 输入数据前要有提示信息3. 结构化程序所要求的基本结构不包括A. 顺序结构B. GOTO跳转C. 选择(分支)结构D. 重复(循环)结构4. 下列选项中不属于结构化程序设计原则的是A. 可封装B. 自顶向下C. 模块化D. 逐步求精5. 结构化程序设计的基本原则不包括A. 多元性B. 自顶向下C. 模块化D. 逐步求精6. 下列选项中不属于结构化程序设计方法的是A. 自顶向下B. 逐步求精C. 模块化D. 可复用7. 结构化程序设计中,下面对goto语句使用描述正确的是A. 禁止使用goto语句B. 使用goto语句程序效率高C. 应避免滥用goto语句D. goto语句确实一无是处8. 下列选项中不符合良好程序设计风格的是A. 源程序要文档化B. 数据说明的次序要规范化C. 避免滥用goto语句D. 模块设计要保证高耦合、高内聚9. 面向对象方法中,继承是指A. 一组对象所具有的相似性质B. 一个对象具有另一个对象的性质C. 各对象之间的共同性质D. 类之间共享属性和操作的机制10. 下列选项中属于面向对象设计方法主要特征的是A. 继承B. 自顶向下C. 模块化D. 逐步求精11. 在面向对象方法中,不属于“对象”基本特点的是A. 一致性B. 分类性C. 多态性D. 标识唯一性12. 定义无符号整数类为UInt,下面可以作为类UInt实例化值的是A. 一369B. 369C. 0.369D. 整数集合{1,2,3,4,5}13. 下面对对象概念描述正确的是A. 对象间的通信靠消息传递B. 对象是名字和方法的封装体C. 任何对象必须有继承性D. 对象的多态性是指一个对象有多个操作14. 在面向对象方法中,实现信息隐蔽是依靠A. 对象的继承B. 对象的多态C. 对象的封装D. 对象的分类15. 下列选项中不属于面向对象程序设计特征的是A. 继承性B. 多态性C. 类比性D. 封装性16. 构成计算机软件的是A. 源代码B. 程序和数据C. 程序和文档D. 程序、数据及相关文档17. 软件是指A. 程序B. 程序和文档C. 算法加数据结构D. 程序、数据与相关文档的完整集合18. 下列描述中正确的是A. 程序就是软件B. 软件开发不受计算机系统的限制C. 软件既是逻辑实体,又是物理实体D. 软件是程序、数据与相关文档的集合19. 软件按功能可以分为应用软件、系统软件和支撑软件(或工具软件)。
国家二级(公共基础知识)模拟试卷2(题后含答案及解析)
国家二级(公共基础知识)模拟试卷2(题后含答案及解析)题型有:1. 选择题 2. 填空题选择题下列各题A、B、C、D四个选项中,只有一个选项是正确的,请将正确选项涂写在答题卡相应位置上。
1.结构化程序设计主要强调的是______。
A.程序的规模B.程序的效率C.程序设计语言的先进性D.程序易读性正确答案:D解析:参考结构化设计思想。
2.需求分析中开发人员要从用户那里了解______。
A.软件做什么B.用户使用界面C.输入的信息D.软件的规模正确答案:A解析:需求分析是软件定义时期的最后一个阶段,它的基本任务就是准确回答“系统必须做什么”这个问题即软件系统功能,需求分析的任务还不是确定系统怎样完成它的工作,而仅仅是确定系统必须完成哪些工作,也就是对目标系统提出完整、准确、清晰、具体的要求。
3.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的测试方法是______。
A.黑箱测试法B.白箱测试法C.错误推测法D.安装测试法正确答案:A解析:黑箱测试方法完全不考虑程序的内部结构和内部特征,而只是根据功能导出测试用例。
白箱测试是根据对程序内部逻辑结构的分析来选取测试用例,白箱测试也称为逻辑覆盖测试,故选项B.不正确:错误推测法只是黑箱测试所使用的一种具体的方法,故选项C 不正确;安装测试是测试层次中的一种,它属于高级测试,故选项D不正确。
4.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有______。
A.特定的数据模型B.数据无冗余C.数据可共享D.专门的数据管理软件正确答案:A解析:在文件系统中,相互独立的记录其内部结构的最简单形式是等长同格式记录的集合,易造成存储空间大量浪费,不方便使用。
而在数据库系统中,数据是结构化的,这种结构化要求在描述数据时不仅描述数据本身,还要描述数据间的关系,这正是通过采用特定的数据模型来实现的。
5.为用户与数据库系统提供接口的语言是______。
