二级C题库选择Word格式.docx
- 文档编号:7463731
- 上传时间:2023-05-08
- 格式:DOCX
- 页数:239
- 大小:277.73KB
二级C题库选择Word格式.docx
《二级C题库选择Word格式.docx》由会员分享,可在线阅读,更多相关《二级C题库选择Word格式.docx(239页珍藏版)》请在冰点文库上搜索。
可以证明的是对于长度为n的有序线性表,在最坏情况下,二分法查找只需要比较log2n次,而顺序查找需要比较n次,因此本题答案为C)。
5.一个栈的初始状态为空。
现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是(
A)12345ABCDE
B)EDCBA54321
C)ABCDE12345
D)54321EDCBA
栈按后进先出的原则组织数据,因此入栈最晚的最先出栈,因此本题答案为B)。
6.下列叙述中正确的是(
A)在栈中,栈中元素随栈底指针与栈顶指针的变化而动态变化
B)在栈中,栈顶指针不变,栈中元素随栈底指针的变化而动态变化
C)在栈中,栈底指针不变,栈中元素随栈顶指针的变化而动态变化
D)在栈中,栈中元素不会随栈底指针与栈顶指针的变化而动态变化
栈是先进后出的数据结构,在对栈操作的整个过程中,栈底指针不变,入栈与出栈操作均由栈顶指针的变化来完成,因此本题答案C)。
7.下列数据结构中,属于非线性结构的是(
A)循环队列
B)带链队列
C)二叉树
D)带链栈
树是简单的非线性结构,因此二叉树作为树的一种属于非线性结构,答案C)正确。
8.下列叙述中正确的是(
A)算法就是程序
B)设计算法时只需要考虑数据结构的设计
C)设计算法时只需要考虑结果的可靠性
算法是指解题方案的准确而完整的描述,算法既不等于程序,也不等于计算方法,因此A)错误。
设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构,因此B)和C)错误。
9.某二叉树有5个度为2的结点,则该二叉树中的叶子结点数是(
A)10
B)8
根据二叉树的基本性质3:
在任意一棵二叉树中,度为0的叶子结点总比度为2的结点多一个,因此本题中度为2的结点为1-1=0个,据此可以知道本题目中的二叉树的每一个结点都有一个分支,所以共7个结点共7层,即深度为7,选择D)。
10.下列关于二叉树的叙述中,正确的是(
A)叶子结点总是比度为2的结点少一个
B)叶子结点总是比度为2的结点多一个
C)叶子结点数是度为2的结点数的两倍
D)度为2的结点数是度为1的结点数的两倍
在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,因此答案为B)。
11.下列关于栈的叙述正确的是(
A)栈按“先进先出”组织数据
B)栈按“先进后出”组织数据
C)只能在栈底插入数据
D)不能删除数据
栈是只允许在同一端进行插入和删除运算的线性表,按“先进后出”组织数据,因此本题答案为B)。
12.下列叙述中正确的是(
A)顺序存储结构的存储空间一定是连续的,链式存储结构的存储空间不一定是连续的
B)顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C)顺序存储结构能存储有序表,链式存储结构不能存储有序表
D)链式存储结构比顺序存储结构节省存储空间
链式存储结构既可以针对线性结构也可以针对非线性结构,因此B)与C)错误。
链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,因此D)错误。
本题答案为A)。
13.对于循环队列,下列叙述中正确的是(
A)队头指针是固定不变的
B)队头指针一定大于队尾指针
C)队头指针一定小于队尾指针
D)队头指针可以大于队尾指针,也可以小于队尾指针
循环队列的队头指针与队尾指针都不是固定的,随着入队与出队操作要进行变化。
因为是循环利用的队列结构,所以对头指针有时可能大于队尾指针有时也可能小于队尾指针,故本题答案为D)。
14.算法的有穷性是指(
A)算法程序的运行时间是有限的
B)算法程序所处理的数据量是有限的
C)算法程序的长度是有限的
D)算法只能被有限的用户使用
算法原则上能够精确地运行,而且人们用笔和纸做有限次运算后即可完成。
算法的有穷性是指算法程序的运行时间是有限的,因此本题答案为A)。
15.对长度为n的线性表排序,在最坏情况下,比较次数不是n(n-1)/2的排序方法是(
A)快速排序
B)冒泡排序
C)直接插入排序
D)堆排序
快速排序、冒泡排序和直接插入排序在最坏情况下,比较次数都是n(n-1)/2,堆排序在最坏情况下的比较次数最少,是O(nlog2n),因此本题答案为D)。
16.下列关于线性链表的叙述中,正确的是(
A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C)进行插入与删除时,不需要移动表中的元素
D)各数据结点的存储顺序与逻辑顺序可以不一致,它们的存储空间也可以不一致
一般来说,在线性表的链式存储结构中,各数据结点的存储序号是不连续的,并且各结点在存储空间中的位置关系与逻辑关系也不一致。
线性链表中数据的插入和删除都不需要移动表中的元素,只需改变结点的指针域即可。
因此,本题答案为C)。
17.算法的空间复杂度是指(
A)算法在执行过程中所需要的计算机存储空间
B)算法所处理的数据量
C)算法程序中的语句或指令条数
D)算法在执行过程中所需要的临时工作单元数
算法的空间复杂度是指算法在执行过程中所需要的内存空间,因此本题答案为A)。
18.下列叙述中正确的是(
A)栈是“先进先出”的线性表
B)队列是“先进后出”的线性表
C)循环队列是非线性结构的线性表
D)有序线性表既可以采用顺序存储结构,也可以采用链式存储结构
19.支持子程序调用的数据结构是(
A)栈
B)树
C)队列
D)二叉树
栈支持子程序调用。
栈是一种只能在一端进行插入或删除的线性表,在主程序调用子程序时要首先保存主程序当前的状态,然后转去执行子程序,最终把子程序的执行结果返回到主程序中调用子程序的位置,然后继续向下执行,这种调用方式符合栈的特点,因此本题的答案为A)。
20.下列叙述中正确的是(
A)循环队列是队列的一种链式存储结构
B)循环队列是队列的一种顺序存储结构
C)循环队列是非线性结构
D)循环队列是一种逻辑结构
在实际应用中,队列的顺序存储结构一般采用循环队列的形式,循环队列是线性结构,因此本题答案为B。
21.下列叙述中正确的是(
)
A)循环队列有队头和队尾两个指针,因此,循环队列是非线性结构
B)在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况
C)在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况
D)循环队列中元素的个数是由队头指针和队尾指针共同决定
循环队列有队头和队尾两个指针,但是循环队列仍是线性结构,因此A)错误;
在循环队列中需要队头与队尾两个指针来共同反映队列中元素的动态变化情况,因此B)与C)错误,故本题答案为D)。
22.下列关于栈叙述正确的是(
)答案:
A)栈顶元素最先能被删除
B)栈顶元素最后才能被删除
C)栈底元素永远不能被删除
D)栈底元素最先能被删除
栈是先进后出的数据结构,因此栈顶元素最后入栈却最先被删除,栈底元素最先入栈却最后被删除,所以本题答案为A)。
23.下列排序方法中,最坏情况下比较次数最少的是(
A)冒泡排序
B)简单选择排序
冒泡排序、直接插入排序与简单选择排序法在最坏情况下均需要比较n(n-1)/2次,而堆排序在最坏情况下需要比较的次数是nlog2n,因此本题答案为D)。
24.某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为(假设根结点在第1层)(
A)3
B)4
D)7
在任意一棵二叉树中,度为0的叶子结点总是比度为2的结点多一个,因此本题答案是5+1=6,故选择C)。
25.下列数据结构中,能够按照“先进后出”原则存取数据的是(
B)栈
栈是按先进后出的原则组织数据的;
队列是按先进先出的原则组织数据的,因此本题答案为B)。
26.某系统总体结构图如下图所示:
该系统总体结构图的深度是(
A)7
B)6
C)3
D)2
根据总体结构图可以看出该树的深度为3,比如:
XY系统——功能2——功能2.1,就是最深的度数的一个表现,因此本题答案为C)。
27.下列叙述中正确的是(
A)有一个以上根结点的数据结构不一定是非线性结构
B)只有一个根结点的数据结构不一定是线性结构
C)循环链表是非线性结构
D)双向链表是非线性结构
线性结构应满足:
有且只有一个根结点与每个结点最多有一个前件,也最多有一个后件,因此B)正确。
因为有一个以上根结点的数据结构一定是非线性结构,所以A)错误。
循环链表和双向链表都是线性结构的数据结构。
2,程序设计基础
28.结构化程序所要求的基本结构不包括(
A)顺序结构
B)GOTO跳转
C)选择(分支)结构
D)重复(循环)结构
1966年Boehm和Jacopini证明了程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式的结构化程序设计方法,因此本题答案为B)。
29.面向对象方法中,继承是指(
A)一组对象所具有的相似性质
B)一个对象具有另一个对象的性质
C)各对象之间的共同性质
D)类之间共享属性和操作的机制
D
继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。
广义地说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,因此继承是指类之间共享属性和操作的机制,选项D)正确。
30.在面向对象方法中,不属于“对象”基本特点的是(
A)一致性
B)分类性
C)多态性
D)标识唯一性
A
在面向对象方法中,对象的基本特点包括:
标识唯一性、分类性、多态性、封装性、模块独立性好。
一致性不属于对象的基本特点,因此本题答案为A)。
31.下列选项中不属于结构化程序设计原则的是(
A)可封装
B)自顶向下
C)模块化
D)逐步求精
结构化程序设计的思想包括:
自顶向下、逐步求精、模块化、限制使用goto语句,因此本题答案为A)。
32.下列选项中属于面向对象设计方法主要特征的是(
A)继承
面向对象设计方法的基本概念有对象、类和实例、消息、继承与多态性,因此选择A)。
33.结构化程序设计的基本原则不包括(
A)多态性
自顶向下、逐步求精、模块化、限制使用goto语句,多态性是面向对象的程序设计的思想,因此本题答案为A)。
34.定义无符号整数类为UInt,下面可以作为类UInt实例化值的是(
A)-369
B)369
C)0.369
D)整数集合{1,2,3,4,5}
B
只有B)选项369可以用无符号整数来表示和存储。
A)选项-369有负号,选项C)0.369是小数,它们都不能用无符号整数类存储。
选项D)是一个整数集合需要用数组来存储。
3软件工程基础
35.软件测试的目的是(
A)评估软件可靠性
B)发现并改正程序中的错误
C)改正程序中的错误
D)发现程序中的错误
软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能,也不是为了评估软件或改正错误,因此本题答案为D)。
36.耦合性和内聚性是对模块独立性度量的两个标准。
下列叙述中正确的是(
A)提高耦合性降低内聚性有利于提高模块的独立性
B)降低耦合性提高内聚性有利于提高模块的独立性
C)耦合性是指一个模块内部各个元素间彼此结合的紧密程度
D)内聚性是指模块间互相连接的紧密程度
模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。
一般较优秀的软件设计应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性,因此A)错误,B)正确。
耦合性是模块间互相连接的紧密程度的度量,内聚性是指一个模块内部各个元素间彼此结合的紧密程度,因此C)与D)错误。
37.软件详细设计产生的图如下:
该图是(
A)N-S图
B)PAD图
C)程序流
D)E-R图
N-S图提出了用方框图来代替传统的程序流程图,因此A)不对。
PAD图是问题分析图,它是继承程序流程图和方框图之后提出的又一种主要用于描述软件详细设计的图形表示工具,因此B)不对。
E-R图是数据库中用于表示E-R模型的图示工具,因此D)不对。
根据图中所示表示方法可以得知该图是进行软件详细设计时使用的程序流程图,因此本题答案为C)。
38.软件测试的目的是(
39.下面不属于需求分析阶段任务的是(
A)确定软件系统的功能需求
B)确定软件系统的性能需求
C)需求规格说明书评审
D)制定软件集成测试计划
需求分析阶段的工作包括:
需求获取、需求分析、编写需求规格说明书、需求评审,因此本题答案为D)。
40.程序调试的任务是(
A)设计测试用例
B)验证程序的正确性
C)发现程序中的错误
D)诊断和改正程序中的错
程序调试的任务是诊断和改正程序中的错误,因此本题答案为D)。
41.下面描述中,不属于软件危机表现的是(
A)软件过程不规范
B)软件开发生产率低
C)软件质量难以控制
D)软件成本不断提高
软件危机主要表现在:
软件需求的增长得不到满足;
软件开发成本和进度无法控制;
软件质量难以保证;
软件不可维护或维护程度非常低;
软件的成本不断提高;
软件开发生产率的提高赶不上硬件的发展和应用需求的增长。
因此本题答案为A)。
42.软件生命周期中的活动不包括(
A)市场调研
B)需求分析
C)软件测试
D)软件维护
软件生命周期可以分为软件定义、软件开发与软件运行维护三个阶段。
主要活动包括:
可行性研究与计划、需求分析、软件设计、软件实现、软件测试、运行和维护,因此本题答案为A)。
43.软件按功能可以分为:
应用软件、系统软件和支撑软件(工具软件)。
下面属于应用软件的是(
A)编译程序
B)操作系统
C)教务管理系统
D)汇编程序
编译程序、操作系统、汇编程序都属于系统软件,只有教务管理系统才是应用软件,因此本题答案为C)。
44.下面描述中错误的是(
A)系统总体结构图支持软件系统的详细设计
B)软件设计是将软件需求转换为软件表示的过程
C)数据结构与数据库设计是软件设计的任务之一
D)PAD图是软件详细设计的表示工具
详细设计的任务是为软件结构图中而非总体结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节,因此A)描述错误。
45.数据流图中带有箭头的线段表示的是(
A)控制流
B)事件驱动
C)模块调用
D)数据流
数据流图中带箭头的线段表示的是数据流,即沿箭头方向传送数据的通道,一般在旁边标注数据流的名称,因此本题答案为D)。
46.软件设计中划分模块的一个准则是(
A)低内聚低耦合
B)高内聚低耦合
C)低内聚高耦合
D)高内聚高耦合
一般较优秀的软件设计应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性,因此本题答案为B)。
47.在软件设计中不使用的工具是(
A)系统结构图
C)数据流图(DFD图)
D)程序流程图
系统结构图是对软件系统结构的总体设计的图形显示。
在需求分析阶段,已经从系统开发的角度出发,把系统按功能逐次分割成层次结构,是在概要设计阶段用到的。
PAD图是在详细设计阶段用到的。
程序流程图是对程序流程的图形表示,在详细设计过程中用到。
数据流图(DFD图)是结构化分析方法中使用的工具,它以图形的方式描绘数据在系统中流动和处理的过程,由于它只反映系统必须完成的逻辑功能,因此它是一种功能模型,是在可行性研究阶段用到的而非软件设计时用到,所以本题答案为C)。
48.程序流程图中带有箭头的线段表示的是(
A)图元关系
B)数据流
C)控制流
D)调用关系
在数据流图中,用标有名字的带箭头线段表示数据流。
在程序流程图中,用标有名字的带箭头线段表示控制流,因此本题答案为C)。
49.在软件开发中,需求分析阶段可以使用的工具是(
B)DFD图
C)PAD图
在需求分析阶段可以使用的工具有数据流图(DFD图),数据字典(DD),判定树与判定表,因此本题答案为B)。
50.在黑盒测试方法中,设计测试用例的主要根据是(
A)程序内部逻辑
B)程序外部功能
C)程序数据结构
黑盒测试是对软件已经实现的功能是否满足需求进行测试和验证,黑盒测试完全不考虑程序内部的逻辑结构和内部特性,只根据程序的需求和功能规格说明,检查程序的功能是否符合它的功能规格说明,因此本题答案为B)。
51.软件按功能可以分为应用软件、系统软件和支撑软件(工具软件)。
A)学生成绩管理系统
B)C语言编译程序
C)UNIX操作系统
D)数据库管理系统
软件按功能可以分为:
应用软件、系统软件、支撑软件。
操作系统、编译程序、汇编程序、网络软件、数据库管理系统都属于系统软件,因此B)、C)、D)都是系统软件,只有A)是应用软件。
52.下面叙述中错误的是(
A)软件测试的目的是发现错误并改正错误
B)对被调试的程序进行“错误定位”是程序调试的必要步骤
C)程序调试通常也称为Debug
D)软件测试应严格执行测试计划,排除测试的随意性
软件测试的目的是为了发现错误而执行程序的过程,并不涉及改正错误,因此选项A)错误。
程序调试的基本步骤有:
错误定位、修改设计和代码以排除错误、进行回归测试以防止引进新的错误。
程序调试通常称为Debug,即排错。
软件测试的基本准则包括:
所有测试都应追溯到需求、严格执行测试计划,排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、不可能实现穷举测试、妥善保存测试计划等文件。
53.软件生命周期是指(
A)软件产品从提出、实现、使用维护到停止使用退役的过程
B)软件从需求分析、设计、实现到测试完成的过程
C)软件的开发过程
D)软件的运行维护过程
通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。
也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期,因此本题答案为A)。
54.在软件开发中,需求分析阶段产生的主要文档是(
A)可行性分析报告
B)软件需求规格说明书
C)概要设计说明书
D)集成测试计划
A)错误,可行性分析阶段产生可行性分析报告。
C)错误,总体设计阶段产生概要设计说明书。
D)错误,集成测试计划是在概要设计阶段编写的文档。
B)正确,需求规格说明书是需求分析阶段产生的主要文档,是后续工作如设计、编码等需要的重要参考文档。
55.在软件开发中,需求分析阶段产生的主要文档是(
A)软件集成测试计划
B)软件详细设计说明书
C)用户手册
D)软件需求规格说明书
需求分析阶段的工作可以概括为:
需求获取
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二级 题库 选择