资源描述
计算机二级C语言章节练习题及答案
1.1 程序和程序设计
1[单选题] 数据库概念设计的过程中,以下各项中不属于视图设计设计次序的是( )。
A.自顶向下
B.由整体到个体
C.由内向外
D.由底向上
参考答案:B
参考解析:数据库概念设计的过程中,视图设计一般有三种设计次序,它们是: 自顶向下。这种方法是先从抽象级别高且普遍性强的对象开始逐步细化、具体化与特殊化。
由底向上。这种设计方法是先从具体的对象开始,逐步抽象,普遍化与一般化,最后形成一个完整的视图设计。由内向外。这种设计方法是先从最基本与最明显的对象着手逐步扩充至非基本、不明显的其他对象。
2[单选题] 关系数据库管理系统能实现的专门关系运算包括( )。
A.选择、投影、连接
B.排序、查找、统计
C.关联、更新、排序
D.显示、打印、制表
参考答案:A
参考解析:关系数据库管理系统能实现的专门关系运算,包括选择运算、投影运算、连接运算。
3[单选题] 关系表中的每一横行称为一个( )。
A.字段
B.元组
C.行
D.码
参考答案:B
参考解析:在关系数据库中,关系模型采用二维表来表示,简称“表”。二维表由表框架及表元组组成。在表框架中,按行可以存放数据,每行数据称为元组。本题答案是B)。
4[单选题] 下列叙述中正确的是( )。
A.数据库不需要操作系统的支持
B.数据库设计是指设计数据库管理系统
C.数据库是存储在计算机存储设备中的、结构化的相关数据的集合
D.数据库系统中,数据的物理结构必须与逻辑结构一致
参考答案:C
参考解析:数据库是存储在计算机存储设备中的、结构化的相关数据的集合。数据库中的数据不只是面向某一项特定的应用,而是面向多种应用,可以被多个用户、多个应用程序共享,不具有独立的系统。设计数据库的目的实质上是设计出满足实际应用需求的实际关系模型。数据库技术的主要目的是有效地管理和存取大量的数据资源,包括:提高数据的共享性,使多个用户能够同时访问数据库中的数据;减小数据的冗余,以提高数据的一致性和完整性;提供数据与应用程序的独立性,从而减少应用程序的开发和维护代价。本题答案为c)。
5[单选题] 数据流图由一些特定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是( )。
A.加工
B.控制流
C.数据存储
D.数据流
参考答案:B
参考解析:数据流图从数据传递和加工的角度,来刻画数据流从输入到输出的移动变换过程。数据流图中的主要图形元素有:加工(转换)、数据流、存储文件(数据源)等。本题答案为B)。
6[单选题] 软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是( )。
A.概要设计
B.软件设计
C.可行性研究和计划制定
D.需求分析
参考答案:D
参考解析:通常,将软件产品从提出、实现、使用维护到停止使用、退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。软件生命周期的主要活动阶段为:可行性研究和计划制定。确定待开发软件系统的开发目标和总的要求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划。 需求分析。对待开发软件提出的需求进行分析并给出详细定义,即准确地确定软件系统的功能。编写软件规格说明书及初步的用户手册,提交评审。
软件设计。系统设计人员和程序设计人员应该在反复理解软件需求的基础上,给出软件的结构、模块的划分、功能的分配以及处理流程。
软件实现。把软件设计转换成计算机可以接受的程序代码。即完成源程序的编码,编写用户手册、操作手册等面向用户的文档,编写单元测试计划。
软件测试。在设计测试用例的基础上,检验软件的各个组成部分。编写测试分析报告。
运行和维护。将已交付的软件投入运行,并在运行使用中不断地维护,根据新提出的需求进行必要而且可能的扩充和删改。
7[单选题] 下面描述中,符合结构化程序设计风格的是( )。
A.使用顺序、选择和重复(循环.三种基本控制结构表示程序的控制逻辑
B.模块只有一个入口,可以有多个出口
C.注重提高程序的执行效率
D.不使用goto语句
参考答案:A
参考解析:结构化程序设计方法的四条原则是:自顶向下。程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标逐步求精。对复杂问题,应设计一些子目标,作过渡,逐步细节化、模块化。一个复杂问题,肯定是由若干稍简单的问题构成;解决这个复杂问题的程序,也应对应若干稍简单的问题,分解成若干稍小的部分。 限制使用goto语句。
8[单选题] 设有下列二叉树:
对此二叉树中序遍历的结果为( )。
A.ACBDEF
B.DEBFCA
C.ABDECF
D.DBEAFC
参考答案:D
参考解析:前序遍历:ABDECF 中序:DBEAFC 后序:DEBFCA (本解析由小珍提供)
9[单选题] 下列关于栈的叙述中正确的是( )。
A.在栈中只能插入数据,不能删除数据
B.在栈中只能删除数据,不能插入数据
C.栈是先进后出(FILO)的线性表
D.栈是先进先出(FIFO)的线性表
参考答案:C
参考解析:栈是限定在一端进行插入与删除的线性表。栈是按照“先进后出”的或后进先出的原则组织数据的,因此,栈也被称为“先进后出”表或“后进先出”表。
10[单选题] 在下列选项中,哪个不是一个算法一般应该具有的基本特征( )。
A.无穷性
B.可行性
C.确定性
D.有穷性
参考答案:A
参考解析:作为一个算法,一般应具有以下几个基本特征:可行性、确定性、有穷性、拥有足够的情报。本题答案为A)。
11[单选题] 如图所示,两个关系R1和R2:
则由关系R1和R2得到关系R3的操作是( )。
A.笛卡尔积
B.连接
C.交
D.除
参考答案:B
参考解析:连接运算也称0连接,是对两个关系进行运算,其意义是从两个关系的笛卡尔积中选择满足给定属性间一定条件的那些元组。本题关系R3为关系R1中B属性和关系R2中D属性相等连接而成。
12[单选题] 下列叙述中错误的是( )。
A.数据库管理系统是数据库的核心
B.数据库系统由数据库、数据库管理系统、数据库管理员三部分组成
C.数据共享最好的是数据库系统阶段
D.数据库中的数据独立于应用程序而不依赖于应用程序
参考答案:B
参考解析:数据库管理系统是数据库系统的核心,它位于用户和操作系统之间,属于系统软件。数据库系统由数据库、数据库管理系统、数据库管理员、硬件平台和软件平台五部分组成。数据库技术的发展经历了3个阶段,人工管理、文件系统和数据库系统,数据共享最好的是数据库系统阶段,数据库中的数据独立于应用程序而不依赖于应用程序。
13[单选题] 下列不属于过程设计工具中图形工具的是( )。
A.N—S
B.PAD
C.程序流程图
D.DFD
参考答案:D
参考解析:常用的过程设计工具有图形工具(程序流程图、N-S图、PAD图、HIPO)、表格工具(判定表)、语言工具(PDL)。
14[单选题] 软件设计中衡量模块独立性的度量标准是( )。
A.抽象和信息隐蔽
B.局部化和封装化
C.内聚性和耦合性
D.激活机制和控制方法
参考答案:C
参考解析:耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦合性越弱。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
15[单选题] 下列选项中属于软件生命周期开发阶段任务的是( )。
A.可行性研究
B.需求分析
C.详细设计
D.软件维护
参考答案:C
参考解析:软件生命周期可分为软件定义、软件开发和软件运行维护3个阶段。软件开发期包括概要设计、详细设计、实现和测试4个阶段。
16[单选题] 下面概念中,不属于面向对象方法的是( )。
A.对象
B.继承
C.类
D.过程调用
参考答案:D
参考解析:类是指具有共同属性、共同方法的对象的集合,所以类是对象的抽象,对象是对应类的一个实例。继承是指能够直接获得已有的性质和特征,而不必重复定义它们。所以选项A、B、C属于面向对象方法,选项D属于面向过程方法。
17[单选题] 下列叙述中正确的是( )。
A.顺序存储结构的存储一定是连续的,链式存储结构的存储空问不一定是连续的
B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构
C.顺序存储结构能存储有序表,链式存储结构不能存储有序表
D.链式存储结构比顺序存储结构节省存储空间
参考答案:A
参考解析:顺序存储方式是把逻辑上相邻的结点存储在物理上相邻的存储单元里,结点之间的关系由存储单元的邻接关系来体现。其优点是占用最少的存储空间,所以选项D)错误。顺序存储结构可以存储如二叉树这样的非线性结构,所以选项B)错误。链式存储结构也可以存储线性表,所以选项c)错误。
18[单选题] 4个元素A、B、C、D依次入栈,入栈过程中允许栈顶元素出栈,假设某一时刻栈的状态是C(栈顶)、B、A(栈底),则不可能的出栈顺序是( )。
A.D、C、B、A
B.C、B、D、A
C.C、A、D、B
D.C、D、B、A
参考答案:C
参考解析:栈的特点是先进后出,所以后入栈的最先出栈。在栈的状态是c(栈顶)、B、A(栈底)时,D未入栈,栈顶元素可以出栈,但A不可能比B先出栈,所以c选项错误。
19[单选题] 下列数据结构中属于非线性结构的是( )。
A.队列
B.线性表
C.二叉树
D.栈
参考答案:C
参考解析:线性结构满足两个条件:有且只有一个根结点;每个结点最多只有一个前件,也最多只有一个后件。栈、队列、线性表都属于线性结构,二叉树是一种非线性结构,因为除叶子结点外,每个结点都有两个后件,不满足线性结构的条件。
20[单选题] 下列描述中正确的是( )。
A.算法是指对解题方案的准确而完整的描述
B.算法的有穷性是指算法程序的长度是有限的
C.算法是否有效与拥有的情报无关
D.算法的基本特征有可行性、确定性和有穷性
参考答案:A
参考解析:算法是指对解题方案的准确而完整的描述。算法具有4个特征:可行性、确定性、有穷性和拥有足够的情报。有穷性指算法必需在有限时间内做完,即算法必需能在执行有限个步骤之后终止。当算法拥有足够的情报时,此算法才是有效的;而当提供的情报不够时,算法可能无效。
1.2 算法
1[填空题]
一颗二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为 【2】 。
参考解析:【2】DEBFCA
【解析】根据二叉树的中序遍历原则可知D为二叉树的最左边的叶子结点,根据二叉树的前序遍历原则可知A是二叉树的根结点,就可以确定二叉树的结构,所以二叉树的后序遍历结果为:DEBFCA。
2[填空题]
队列是限定在表的一端进行插入和在另一端进行删除操作的线性表。允许删除的一端称作__________。
参考解析:队头
【解析】队列是只允许在一端删除,在另一端插入的顺序表,在队列中。允许插入的一端叫做“队尾”,允许删除的一端叫做“队头”。
3[填空题]
在最坏情况下,堆排序需要比较的次数为_________。
参考解析:O(nlog2n)
【解析】在最坏情况下,冒泡排序所需要的比较次数为n(n-1)/2;简单插入排序所需要的比较次数为n(n-1)/2;希尔排序所需要的比较次数为O(n1.5);堆排序所需要的比较次数为O(nlog2n)。
4[单选题] 算法的有穷性是指( )。
A.算法程序的运行时间是有限的
B.算法程序所处理的数据量是有限的
C.算法程序的长度是有限的
D.算法只能被有限的用户使用
参考答案:A
参考解析:算法具有5个特性:①有穷性:一个算法必须(对任何合法的输入值)在执行有穷步之后结束,且每一步都可在有限时间内完成,即运行时间是有限的;②确定性:算法中每一条指令必须有确切的含义,读者理解时不会产生歧义。③可行性:一个算法是可行的,即算法中描述的操作都是可以通过已经实现的基本运算执行有限次来实现。,④输入:一个算法有零个或多个输入,这些输入取自于某个特定的对象的集合。⑤输出:一个算法有一个或多个输出。
5[单选题] 下列叙述中正确的是( )。
A.数据的逻辑结构与存储结构是一一对应的
B.算法的时间复杂度与空间复杂度一定相关
C.算法的效率只与问题的规模有关,而与数据的存储结构无关
D.算法的时间复杂度是指执行算法所需要的计算工作量
参考答案:D
参考解析:根据时间复杂度和空间复杂度的定义可知,算法的时间复杂度与空间复杂度并不相关。数据的逻辑结构就是数据元素之间的逻辑关系,它是从逻辑上描述数据元素之间关系的,是独立于计算机的;数据的存储结构是研究数据元素和数据元素之间的关系如何在计算机中表示的,它们并非一一对应。算法的执行效率不仅与问题的规模有关,还与数据的存储结构有关。
6[单选题] 有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是( )。
A.自然连接
B.并
C.差
D.交
参考答案:C
参考解析:R和S的差是由属于R但不属于S的元组组成的集合,运算符为“-”。记为T=R-S。根据本题关系R和关系S运算前后的变化,可以看出此处进行的是关系运算的差运算。
7[单选题] 一棵二叉树共有25个节点,其中5个叶子节点,那么度为1的节点数为( )。
A.4
B.6
C.10
D.16
参考答案:D
参考解析:由二叉树的性质n0=n2+1可知,度为0的结点数(即叶子结点数)=度为2的结点数+1,根据题意得知,度为2的结点数为4个,那么25-5-4=16即为度为1的结点数。 25个节点,5个子节点,其中子节点(度为0的节点)个数-度为2的节点个数=1,所以度为2的节点个数为4。节点度数有0,1,2,所以度为1的节点数为25-4-5=16,选项D正确。
8[单选题] 下列叙述中正确的是( )。
A.循环队列是队列的一种顺序存储结构
B.循环队列是队列的一种链式存储结构
C.循环队列是非线性结构
D.循环队列是一直逻辑结构
参考答案:A
参考解析:为了充分利用存储空间,可以把顺序队列看成一个环状空间,即把顺序队列的头尾指针相连,这样的队列称之为循环队列。它是对顺序队列的改进,故循环队列是队列的一种顺序存储结构。
9[单选题] 下列关于二叉树的叙述中,正确的是( )。
A.叶子结点总是比度为2的结点少一个
B.叶子结点总是比度为2的结点多一个
C.叶子结点数是度为2的结点数的两倍
D.度为2的结点数是度为1的结点数的两倍
参考答案:B
参考解析:由二叉树的性质可以知道在二叉树中叶子结点总是比度为2的结点多一个。
10[单选题] 下列关于线性链表的叙述中,正确的是( )。
A.各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致
B.各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续
C.进行插入与删除时,不需要移动表中的元素
D.以上三种说法都不对
参考答案:C
参考解析:线性表的链式存储结构称为线性链表。在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。
11[单选题] 下列叙述中正确的是( )。
A.算法就是程序
B.设计算法时只需要考虑数据结构的设计
C.设计算法时只需要考虑结果的可靠性
D.以上三种说法都不对
参考答案:D
参考解析:所谓算法是指解题方案的准确而完整的描述。是一一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,且是明确的,此顺序将在有限的次数下终止。算法不等于程序,也不等于计算方法。设计算法时不仅要考虑对数据对象的运算和操作,还要考虑算法的控制结构。
12[单选题] 某二叉树共有7个结点,其中叶子结点只有l个,则该二叉树的深度为(假设根结点在第1层)( )。
A.3
B.4
C.6
D.7
参考答案:D
参考解析:叶子节点就是度为0的结点,比度为2的结点多一个,即度2的没有,这样度为1的结点就是6个,故深度为7(1度就是结点连着1个子树,二叉树最多俩子树,即左右子树)。根据二叉树的性质,度为0的结点(即叶子结点)总是比度为2的结点多一个。题目中的二叉树的叶子结点为1,因此度为2的结点的数目为0,因而这个二叉树的深度为7。
13[单选题] 下列叙述中正确的是( )。
A.有一个以上根结点的数据结构不一定是非线性结构
B.只有一个根结点的数据结构不一定是线性结构
C.循环链表是非线性结构
D.双向链表是非线性结构
参考答案:B
参考解析:在数据结构中,树这类的的数据结构只有一个根结点,但它不是线性结构。
14[单选题] 下列关于栈叙正确的是( )。
A.栈顶元素最先能被删除
B.栈顶元素最后才能被删除
C.栈底元素永远不能被删除
D.以上三种说法都不对
参考答案:A
参考解析:栈是先进后出的线性表,栈顶的元素最先被删除,栈底的元素最后被删除。
15[单选题] 下列数据结构中,能用二分法进行查找的是( )。
A.无序线性表
B.线性链表
C.二叉链表
D.顺序存储的有序表
参考答案:D
参考解析:二分法查找只适用于顺序存储的有序表,表中的元素按值从小到大排列。
16[单选题] 对下列二叉树进行中序遍历的结果是( )。
A.ABCDEFGH
B.ABDGEHCF
C.GDBEHACF
D.GDHEBFCA
参考答案:C
参考解析:遍历就是不重复地访问二叉树的所有结点。二叉树遍历的方法有3种:前序遍历、中序遍历和后序遍历。记住3种遍历的顺序:
①前序,访问根一按前序遍历左子树一按前序遍历右子树。
②中序,按中序遍历左子树一访问根一按中序遍历右子树。
③后序,按后序遍历左子树一按后序遍历右子树->访问根。
所以对该二叉树的中序遍历结果为GDBEHACF。
17[单选题] 在一棵二叉树中,叶子结点共有30个,度为1的结点共有40个,则该二叉树中的总结点数共有( )个。
A.89
B.93
C.99
D.100
参考答案:C
参考解析:根据二叉树性质3:对任何一棵二叉树,度为0的结点(即叶子结点)总是比度为2的结点多一个。所以该二叉树度为2的结点有29个,故总结点数=30个叶子结点+29个度为2的结点+40个度为1的结点=99个结点。
18[单选题] 下列关于栈的描述中,正确的是( )。
A.在栈中只能插入元素
B.在栈中只能删除元素
C.只能在一端插入或删除元素
D.只能在一端插入元素,而在另一端删除元素
参考答案:C
参考解析:栈实际也是线性表,只不过是一种特殊的线性表。栈是只能在表的一端进行插入和删除运算的线性表,通常称插入、删除的这一端为栈顶,另一端为栈底。当表中没有元素时称为空栈。栈顶元素总是最后被插入的元素,从而也是最先被删除的元素:栈底元素总是最先被插入的元素,从而也是最后才能被删除的元素。
19[单选题] 算法的有穷性是指( )
A.算法程序的运行时间是有限的
B.算法程序所处理的数据量是有限的
C.算法程序的长度是有限的
D.算法只能被有限的用户使用
参考答案:A
参考解析:算法的基本特征主要包括以下四个方面:
•可行性:针对实际问题而设计的算法,执行后能够得到满意的结果。
•确定性:算法中的每一个步骤都必须有明确的定义,不允许有模棱两可的解释和多义性。
•有穷性:算法必需在有限时间内做完,即算法必需能在执行有限个步骤之后终止。
•拥有足够的情报:要使算法有效必需为算法提供足够的情报当算法拥有足够的情报时,此算法才最有效的;而当提供的情报不够时,算法可能无效。
20[单选题] 以下关于算法叙述错误的是( )。
A.算法可以用伪代码、流程图等多种形式来描述
B.一个正确的算法必须有输入
C.一个正确的算法必须有输出
D.用流程图可以描述的算法可以用任何一种计算机高级语言编写成程序代码
参考答案:B
1.3 结构化程序设计和模块化结构
1[填空题]
数据结构分为线性结构与非线性结构,带链的栈属于 。
参考解析:线性结构 【解析】一般将数据结构分为线性结构与非线性结构两大类。如果一个非空的数据结构满足以下两个条件:
①有且只有一个根结点;
②每一个结点最多有一个前件,也最多有一个后件。
则称该数据结构为线性结构,所以带链栈为线性结构。
2[填空题]
对软件设计的最小单位(模块或程序单元)进行的测试通常称为 测试。
参考解析:单元 解析:对软件的模板进行的测试通常称为单元测试。
3[填空题]
符合结构化原则的三种基本控制结构是顺序结构、__________和循环结构。
参考解析:选择结构
【解析】程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。
4[填空题]
在面向对象方法中,_________描述的是具有相似属性与操作的一组对象。
参考解析:类
【解析】在面向对象方法中,把具有相同属性和方法的对象称为类,类是对象的抽象,对象是类的实例。
5[填空题]
符合结构化原则的三种基本控制结构为:顺序结构,选择结构和 。
参考解析:循环结构
6[单选题] 有两个关系R,S如下:
由关系R通过运算得到关系s,则所使用的运算为( )。
A.选择
B.插入
C.投影
D.连接
参考答案:C
参考解析:专门的关系运算有3种:投影、选择和联接。选择运算是从关系中找出满足给定条件的那些元组,其中的条件是以逻辑表达式给出的;值为真的元组将被选取,这种运算是从水平方向抽取元组。投影运算是从关系模式中挑选若干属性组成新的关系,这是从列的角度进行的运算,相当于对关系进行垂直分解。联接运算是二目运算,需要两个关系作为操作对象。
7[单选题] 结构化分析可以使用的工具是( )。
A.N—s图
B.DFD图
C.PAD图
D.程序流程图
参考答案:B
参考解析:数据流图(DFD)、数据字典、判定表和判定树是结构化分析常用的工具。程序流程图、N—S图、PAD图是详细设计过程中常用的图形工具。
8[单选题] 在结构化程序设计中,模块划分的原则是( )。
A.各模块应包括尽量多的功能
B.各模块的规模应尽量大
C.各模块之间的联系应尽量紧密
D.模块内具有高内聚度,模块间具有低耦合度
参考答案:D
参考解析:[考核] 软件设计的概念 [评析] 软件设计中通常采用结构化设计方法,模块的独立程度是评价设计好坏的重要度量标准。耦合性与内聚 性是模块独立性的两个定性标准。内聚性是一个模块内部各个元素间彼此结合的紧密程度的度量;耦合性是模块间互相连接的紧密程度的度量。一般较优秀的软件设 计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
9[单选题] 下列数据结构中,属于非线性结构的是( )。
A.带链队列
B.循环队列
C.带链栈
D.二叉树
参考答案:D
参考解析:根据数据结构中各数据元素之间前后关系的复杂程度,一般将数据结构分为两大类型:线性结构与非线性结构。线性结构表示数据元素之间为一对一的关系,非线性结构表示数据元素之间为一对多或者多对一的关系。根据各种结构的定义知二叉树是一种非线性结构。
10[单选题] 针对简单程序设计,以下叙述的实施步骤正确的是( )。
A.确定算法和数据结构、编码、调试、整理文档
B.编码、确定算法和数据结构、调试、整理文档
C.整理文档、确定算法和数据结构、编码、调试
D.确定算法和数据结构、调试、编码、整理文档
参考答案:A
参考解析:简单程序设计的步骤是首先要确定算法和数据结构,然后编码、调试,最后整理相关文档。
11[单选题] 有三个关系R、S和T如下:
则由关系R和S得到关系T的操作是( )。
A.自然连接
B.并
C.差
D.交
参考答案:C
参考解析:R和S的差是由属于R但不属于S的元组组成的集合,运算符为“-”。记为T=R-S。根据本题关系R和关系S运算前后的变化,可以看出此处进行的是关系运算的差运算。
12[单选题] 结构化程序所要求的基本结构不包括( )。
A.顺序结构
B.GOT0跳转
C.选择(分支)结构
D.重复(循环)结构
参考答案:B
参考解析:结构化程序的基本结构有:顺序结构、选择结构和循环结构,没有GOTO跳转结构。
13[单选题] 为了使模块尽可能独立,要求( )。
A.内聚程度要尽量高,耦合程度要尽量强
B.内聚程度要尽量高,耦合程度要尽量弱
C.内聚程度要尽量低,耦合程度要尽量弱
D.内聚程度要尽量低,耦合程度要尽量强
参考答案:B
参考解析:模块独立性是指每个模块只完成系统要求的独立的子功能,并且与其他模块的联系最少且接口简单。耦合性与内聚性是模块独立性的两个定性标准,耦合与内聚是相互关联的。在程序结构中,各模块的内聚性越强,则耦台性越弱。一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。
14[单选题] 关系数据库管理系统能实现的专门关系运算包括( )
A.排序、索引、统计
B.选择、投影、连接
C.关联、更新、排序
D.显示、打印、制表
参考答案:B
参考解析:关系数据库管理系统的专门关系运算包括选择运算、投影运算和连接运算。
15[单选题] 内聚性是对模块功能强度的衡量,下列选项中,内聚性较弱的是( )。
A.顺序内聚
B.偶然内聚
C.时间内聚
D.逻辑内聚
参考答案:B
参考解析:内聚是从功能角度来衡量模块的联系,它描述的是模块内的功能联系。内聚有如下种类,它们之间的内聚度由弱到强排列:
偶然内聚——模块中的代码无法定义其不同功能的调用。但它使该模块能执行不同的功能,这种模块为巧合强度模块。
逻辑内聚——这种模块把几种相关的功能组合在一起,每次被调用时,由传送给模块的参数来确定该模块应完成哪一种功能。
时间内聚——这种模块顺序完成一类相关功能,比如初始化模块。它顺序地为变量置初值。
过程内聚——如果一个模块内的处理元素是相关的,而且必须以特定次序执行,则称为过程内聚。
通信内聚——这种模块除了具有过程内聚的特点外,还有另外一种关系,即它的所有功能都通过使用公用数据而发生关系。
顺序内聚——如果一个模块内各个处理元素和同一个功能密切相关,而且这些处理必须顺序执行,处理元素的输出数据作为下一个处理元素的输入数据,则称为顺序内聚。
功能内聚——如果一个模块包括为完成某一具体任务所必需的所有成分,或者说模块中所有成分结合起来是为了完成一个具体的任务,此模块则为功能内聚模块。
16[单选题] 结构化程序设计的3种结构是( )。
A.顺序结构,分支结构,跳转结构
B.顺序结构,选择结构,循环结构
C.分支结构,选择结构,循环结构
D.分支结构,跳转结构,循环结构
参考答案:B
参考解析:程序设计语言仅仅使用顺序、选择和重复(循环)三种基本控制结构就足以表达出各种其他形式结构的程序设计方法。遵循程序结构化的设计原则,按结构化程序设计方法设计出的程序易于理解、使用和维护;可以提高编程工作的效率,降低软件的开发成本。
17[单选题] 下列选项中不属于结构化程序设计方法的是( )
A.自顶向下
B.逐步求精
C.模块化
D.可复用
参考答案:D
参考解析:结构化程序设计的主要原则是:自顶向下,逐步求精,模块化,限制使用go to语句。可复用性是指软件元素不加修改和稍加修改可在不同的软件开发过程中重复使用的性质,不是结构化程序设计的原则。
18[单选题] 下列选项中不属于结构化程序设计原则的是 ( )
A.可封装
B.自顶向下
C.模块化
D.逐步求精
参考答案:A
参考解析:结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化,限制使用go to语句等。
19[单选题] 结构化程序设计的基本原则不包括 ( )
A.多态性
B.自顶向下
C.模块化
D.逐步求精
参考答案:A
参考解析:结构化程序设计方法的主要原则可以概括为自顶向下,逐步求精,模块化。程序设计时,应先从最上层总目标开始设计,逐步使问题具体化。对复杂问题,应设计-些子目标作为过渡,逐步细化。模块化是把程序要解决的总目标分解为子目标,再进-步分解为具体的小目标,把每一个小目标称为一个模块。
20[单选题] 面向对象的程序设计主要考虑的是提高软件的( )
A.可靠性
B.可重用性
C.可移植性
D.可修改性
参考答案:B
展开阅读全文