1、二级 C 语言-公共基础知识、C 语言概述及答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:67,分数:67.00)1.下列叙述中正确的是_。 A.程序执行的效率与数据的存储结构密切相关 B.程序执行的效率只取决于程序的控制结构 C.程序执行的效率只取决于所处理的数据量 D.以上 3 种说法都不对(分数:1.00)A.B.C.D.2.下列有关顺序存储结构的叙述,不正确的是_。 A.存储密度大 B.逻辑上相邻的结点物理上不必邻接 C.可以通过计算机直接确定第 i 个结点的存储地址 D.插入、删除操作不方便(分数:1.00)A.B.C.D.3.在一个长度为 n 的顺序
2、表中,向第 i 个元素(1in+1)位置插入一个新元素时,需要从后向前依次移动_个元素。 A.n-i B.i C.n-i-1 D.n-i+1(分数:1.00)A.B.C.D.4.下列对队列的叙述,正确的是_。 A.队列属于非线性表 B.队列按“先进后出”原则组织数据 C.队列在队尾删除数据 D.队列按“先进先出”原则组织数据(分数:1.00)A.B.C.D.5.下列关于栈的描述,正确的是_。 A.在栈中只能插入元素而不能删除元素 B.在栈中只能删除元素而不能插入元素 C.栈是特殊的线性表,只能在一端插入或删除元素 D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(分数:1.00)A
3、.B.C.D.6.下列叙述中,正确的是_。 A.线性链表是线性表的链式存储结构 B.栈与队列是非线性结构 C.双向链表是非线性结构 D.只有根结点的二叉树是线性结构(分数:1.00)A.B.C.D.7.对如下图所示二叉树进行后序遍历的结果为_。(分数:1.00)A.B.C.D.8.下列数据结构中,能用二分法进行查找的是_。 A.顺序存储的有序线性表 B.线性链表 C.二叉链表 D.有序线性链表(分数:1.00)A.B.C.D.9.对于长度为 n 的线性表,在最坏的情况下,下列各排序法所对应的比较次数中正确的是_。 A.冒泡排序为 n/2 B.冒泡排序为 n C.快速排序为 n D.快速排序为
4、n(n-1)/2(分数:1.00)A.B.C.D.10.下列叙述中,不属于良好程序设计风格要求的是_。 A.程序的效率第一,清晰第二 B.程序的可读性好 C.程序中要有必要的注释 D.输入数据前要有提示信息(分数:1.00)A.B.C.D.11.下列选项中不符合良好程序设计风格的是_。 A.源程序要文档化 B.数据说明的次序要规范化 C.避免滥用 goto 语句 D.模块设计要保证高耦合、高内聚(分数:1.00)A.B.C.D.12.下列选项中不属于结构化程序设计方法的是_。 A.自顶向下 B.逐步求精 C.模块化 D.可复用(分数:1.00)A.B.C.D.13.在面向对象方法中,实现信息隐
5、蔽是依靠_。 A.对象的继承 B.对象的多态 C.对象的封装 D.对象的分类(分数:1.00)A.B.C.D.14.下列描述中,正确的是_。 A.程序就是软件 B.软件开发不受计算机系统的限制 C.软件既要是逻辑实体,又是物理实体 D.软件是程序、数据与相关文档的集合(分数:1.00)A.B.C.D.15.从工程管理角度,软件设计一般分为两步完成,它们是_。 A.概要设计与详细设计 B.数据设计与接口设计 C.软件结构设计与数据设计 D.过程设计与数据设计(分数:1.00)A.B.C.D.16.下列叙述中,正确的是_。 A.软件测试应该由程序开发者来完成 B.程序经调试后一般不需要再测试 C.
6、软件维护只包括对程序代码的维护 D.以上 3 种说法都不对(分数:1.00)A.B.C.D.17.软件调试的目的是_。 A.发现错误 B.更正错误 C.改善软件性能 D.验证软件的正确性(分数:1.00)A.B.C.D.18.下列叙述中,正确的是_。 A.数据库系统是一个独立的系统,不需要操作系统的支持 B.数据库技术的根本目标是要解决数据的共享问题 C.数据库管理系统就是数据库系统 D.以上 3 种说法都不对(分数:1.00)A.B.C.D.19.在数据库系统中,用户所见的数据模式为_。 A.概念模式 B.外模式 C.内模式 D.物理模式(分数:1.00)A.B.C.D.20.下列说法中,正
7、确的是_。 A.为了建立一个关系,首先要构造数据的逻辑关系 B.表示关系的二维表中各元组的每个分量还可以分成若干个数据项 C.一个关系的属性名称为关系模式 D.一个关系可以包含多个二维表(分数:1.00)A.B.C.D.21.用树形结构表示实体之间联系的模型是_。 A.关系模型 B.网状模型 C.层次模型 D.以上 3 个都是(分数:1.00)A.B.C.D.22.设有以下 3 个关系表,如表 1表 3 所示。 B表 1 关系表一/BRA B C1 1 22 2 3B表 2 关系表二/BSA B C3 1 3B表 3 关系表三/BTA B C1 1 22 2 33 1 3下列操作中正确的是_。
8、 A.T=RS B.T=RS C.T=RS D.T=R/S (分数:1.00)A.B.C.D.23.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是_。 A.并 B.交 C.投影 D.笛卡尔乘积(分数:1.00)A.B.C.D.24.在 E-R 图中,用来表示实体之间联系的图形是_。 A.矩形 B.椭圆形 C.菱形 D.平行四边形(分数:1.00)A.B.C.D.25.对下列二叉树进行中序遍历的结果是_。(分数:1.00)A.B.C.D.26.按照“后进先出”原则组织数据的数据结构是_。 A.队列 B.栈 C.双向链表 D.二叉树(分数:1.00)A.B.C.D.27.下列叙述中
9、,正确的是_。 A.一个逻辑数据结构只能有一种存储结构 B.数据的逻辑结构属于线性结构,存储结构属于非线性结构 C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(分数:1.00)A.B.C.D.28.下面选项中,不属于面向对象程序设计特征的是_。 A.继承性 B.多态性 C.类比性 D.封装性(分数:1.00)A.B.C.D.29.下列叙述中,正确的是_。 A.软件交付使用后还需要进行维护 B.软件一旦交付使用就不需要再进行维护 C.软件交付使用后其生命周期就结束 D.软件维护是指修复程序中被破
10、坏的指令(分数:1.00)A.B.C.D.30.下列描述中,正确的是_。 A.软件工程只是解决软件项目的管理问题 B.软件工程主要解决软件产品的生产率问题 C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 D.软件工程只是解决软件开发中的技术问题(分数:1.00)A.B.C.D.31.在软件设计中,不属于过程设计工具的是_。 A.PDL(过程设计语言) B.PAD 图 C.N-S 图 D.DFD 图(分数:1.00)A.B.C.D.32.数据库设计的 4 个阶段是需求分析、概念设计、逻辑设计和_。 A.编码设计 B.测试阶段 C.运行阶段 D.物理设计(分数:1.00)A.B.C
11、.D.33.数据库技术的根本目标是要解决数据的_。 A.存储问题 B.共享问题 C.安全问题 D.保护问题(分数:1.00)A.B.C.D.34.数据库独立性是数据库技术的重要特点之一。所谓数据独立性是指_。 A.数据与程序独立存放 B.不同的数据被存放在不同的文件中 C.不同的数据只能被对应的应用程序所使用 D.以上 3 种说法都不对(分数:1.00)A.B.C.D.35.下列关于栈的叙述,正确的是_。 A.栈是非线性结构 B.栈是一种树状结构 C.栈具有“先进先出”的特征 D.栈具有“后进先出”的特征(分数:1.00)A.B.C.D.36.结构化程序设计所规定的 3 种基本控制结构是_。
12、A.输入、处理、输出 B.树型、网型、环型 C.顺序、选择、循环 D.主程序、子程序、函数(分数:1.00)A.B.C.D.37.下列叙述,正确的是_。 A.算法的效率只与问题的规模有关,而与数据的存储结构无关 B.算法的时间复杂度是指执行算法所需要的计算工作量 C.数据的逻辑结构与存储结构是一一对应的 D.算法的时间复杂度与空间复杂度一定相关(分数:1.00)A.B.C.D.38.在结构化程序设计中,模块划分的原则是_。 A.各模块应包括尽量多的功能 B.各模块的规模尽量大 C.各模块之间的联系应尽量紧密 D.模块内具有高内聚度、模块间具有低耦合度(分数:1.00)A.B.C.D.39.某二
13、叉树中有 n 个度为 2 的结点,则该二叉树中的叶子结点数为_。 A.n+1 B.n-1 C.2n D.n/2(分数:1.00)A.B.C.D.40.下列叙述中,正确的是_。 A.C 程序中的注释只能出现在程序的开始位置和语句的后面 B.C 程序书写格式严谨,要求一行内只能写一个语句 C.C 程序的书写格式自由,一个语句可以写在多行上 D.用 C 语言编写的程序只能放在一个程序文件中(分数:1.00)A.B.C.D.41.下列选项中,由 C 语言提供的合法关键字的是_。 A.swicth B.cher C.default D.Case(分数:1.00)A.B.C.D.42.下列叙述中,正确的是
14、_。 A.C 程序的基本组成是语句 B.C 程序中的每一行只能写一条语句 C.简单 C 语句必须以分号结束 D.C 语句必须在一行内写完(分数:1.00)A.B.C.D.43.C 语言规定,在一个源程序中,main()函数的位置_。 A.必须在最开始 B.必须在系统调用的库函数的后面 C.可以任意 D.必须在最后(分数:1.00)A.B.C.D.44.以下说法正确的是_。 A.C 程序是从第一个定义的函数开始执行的 B.在 C 程序中,要调用的函数必须在 main()函数中定义 C.C 程序是从 main()函数开始执行 D.C 程序中的 main()函数必须放在程序的开始部分(分数:1.00
15、)A.B.C.D.45.下面 4 个选项中,均是不合法的用户标识符的选项是_。 A.A P_0 do B.float la0_A C.b-a goto int D._123 temp int(分数:1.00)A.B.C.D.46.以下选项中不合法的标识符是_。 A.print B.FOR C. b; B.double a=b=7; C.double a=7, b=7; D.double,a, b;(分数:1.00)A.B.C.D.54.C 语言中,int 类型变量所占字节数是_。 A.1 B.2 C.3 D.4(分数:1.00)A.B.C.D.55.在 C 语言中定义了一个变量,该变量代表内存
16、中的一个_。 A.区域 B.单元 C.地址 D.容量(分数:1.00)A.B.C.D.56.构成 C 语言程序的基本单位是_。 A.函数 B.变量 C.子程序 D.语句(分数:1.00)A.B.C.D.57.以下_是不正确的转义字符。 A./ B.“ C.020 D./0(分数:1.00)A.B.C.D.58.C 语言规定:在一个源程序中,main()函数的位置_。 A.必须在最开始 B.必须在系统调用的库函数后面 C.可以任意 D.必须在最后(分数:1.00)A.B.C.D.59.为求出 return 语句返回计算 100!的结果,此函数的类型说明应为_。 A.int B.long C.un
17、signed long D.选项 A、B、C 都不对(分数:1.00)A.B.C.D.60.C 语言中的标识符只能由字母、数字和下划线 3 种字符组成,且第一个字符_。 A.必须为字母 B.必须为下划线 C.必须为字母或下划线 D.可以是字母、数字和下划线中的任意一种(分数:1.00)A.B.C.D.61.以下选项中合法的用户标识符是_。 A.int B.a# C.5mem D._243(分数:1.00)A.B.C.D.62.C 语言中的简单数据类型有_。 A.整型、实型、逻辑型 B.整型、字符型、逻辑型 C.整型、实型、字符型 D.整型、实型、字符型、逻辑型(分数:1.00)A.B.C.D.
18、63.以下选项中,不正确的整型常量是_。 A.-37 B.32,758 C.326 D.6(分数:1.00)A.B.C.D.64.以下选项中,合法的 C 语言字符常量是_。 A./t B.“A“ C.67 D.A(分数:1.00)A.B.C.D.65.以下选项中,不正确的实型常量是_。 A.123 B.1e4 C.3.640E-1 D.0.35(分数:1.00)A.B.C.D.66.以下选项中,合法的 C 语言赋值语句是_。 A.a=b=34 B.a=34, b=34 C.-i; D.m=(int)(x+y);(分数:1.00)A.B.C.D.67.设 int 类型的数据长度为两个字节,则 u
19、nsigned int 类型数据的取值范围是_。 A.0255 B.065535 C.-3276832767 D.-256255(分数:1.00)A.B.C.D.二、B操作题/B(总题数:4,分数:33.00)68.下列给定程序中函数 fun()的功能是:求出以下数列的前 n 项之和,和值通过函数值返回。1,2,3,4,5,6,.例如,若 n=5,则应输出 15。请改正程序中的错误,使其得出正确的结果。不得增行或删行,也不得更改程序的结构!试题程序#include stdlib.h#include stdio.h/* * * *found* * * * /int fun(int n); /*
20、* * *found* * * * /int i/* * * *found* * * * /sum=0;for(i=1; i=n; i+) /* * * *found* * * * /sum=sum+i;return sum;(分数:11.00)_69.下列给定程序中函数 fun()的功能是:输入一圆,其直径为 n,求出周长。 请改正程序中的错误,使其得出正确的结果。 不得增行或删行,也不得更改程序的结构。 试题程序: #include stdio.h /* * * * *found* * * * * / #define PI 3.14159; /* * * * *found* * * * *
21、 / int fun(int n); /* * * * *found* * * * * / PI=3.14159; return PI * n; (分数:11.00)_70.下列给定程序中函数 fun()的功能是:求出以下分数序列的前 n 项之和。和值通过函数值返回。21,32,53,85,138,2113,.例如,若 n=5,则应输出 8.391667。请改正程序中的错误,使其得出正确的结果。注意:不得增行或删行,也不得更改程序的结构。试题程序#include stdlib.h#include conio.h#include stdio.hdouble fun(int n) int a=2,
22、 b=1, c, k;/* * * * *found* * * * * /int s=0.0;for(k=1; k=n; k+) /* * * * *found* * * * * /s=s+(Double)a/bc=a; a=a+b; b=c;return(s);(分数:5.00)_71.下列给定程序中函数 fun()的功能是:求两个非零正整数的最大公约数,并作为函数值返回。例如,若 num1 和 num2 分别为 49 和 21,则输出的最大公约数为 7;若 num1 和 num2 分别为 27 和 81,则输出的最大公约数为 27。请改正程序中的错误,使它能得出正确结果。注意:不得增行或删
23、行,也不得更改程序的结构。试题程序#include stdio.hint fun(int a, int b) /* * * * *found* * * * * /int r; t;if(a b) /* * * * *found* * * * * /t=a; a=b; b=tr=a % b;/ * * * * *found* * * * * /while(r !=0); a=b; b=r; r=a% b;return b;main()int a, bprintf(“请输入两个非 0 正数整数:/n“);scanf(“% d% d“, (分数:6.00)_二级 C 语言-公共基础知识、C 语言概述
24、答案解析(总分:100.00,做题时间:90 分钟)一、B选择题/B(总题数:67,分数:67.00)1.下列叙述中正确的是_。 A.程序执行的效率与数据的存储结构密切相关 B.程序执行的效率只取决于程序的控制结构 C.程序执行的效率只取决于所处理的数据量 D.以上 3 种说法都不对(分数:1.00)A. B.C.D.解析:解析 在计算机中,数据的存储结构对数据的执行效率有较大影响,如在有序存储的表中查找某个数值比在无序存储的表中查找的效率高很多。2.下列有关顺序存储结构的叙述,不正确的是_。 A.存储密度大 B.逻辑上相邻的结点物理上不必邻接 C.可以通过计算机直接确定第 i 个结点的存储地
25、址 D.插入、删除操作不方便(分数:1.00)A.B. C.D.解析:解析 顺序存储结构要求逻辑上相邻的元素物理上也相邻,所以只有选项 B 叙述错误。3.在一个长度为 n 的顺序表中,向第 i 个元素(1in+1)位置插入一个新元素时,需要从后向前依次移动_个元素。 A.n-i B.i C.n-i-1 D.n-i+1(分数:1.00)A.B.C.D. 解析:解析 根据顺序表的插入运算的定义知道,在第 i 个位置上插入 x,从 ai到 an都要向后移动一个位置,共需要移动 n-i+1 个元素。4.下列对队列的叙述,正确的是_。 A.队列属于非线性表 B.队列按“先进后出”原则组织数据 C.队列在
26、队尾删除数据 D.队列按“先进先出”原则组织数据(分数:1.00)A.B.C.D. 解析:解析 队列是一种特殊的线性表,它只能在一端进行插入,在另一端进行删除。允许插入的一端称为队尾,允许删除的一端称为队头。队列又称为“先进先出”或“后进后出”的线性表,体现了“先到先服务”的原则。5.下列关于栈的描述,正确的是_。 A.在栈中只能插入元素而不能删除元素 B.在栈中只能删除元素而不能插入元素 C.栈是特殊的线性表,只能在一端插入或删除元素 D.栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(分数:1.00)A.B.C. D.解析:解析 栈是一种特殊的线性表。在这种特殊的线性表中,其插入
27、和删除操作只在线性表的一端进行。6.下列叙述中,正确的是_。 A.线性链表是线性表的链式存储结构 B.栈与队列是非线性结构 C.双向链表是非线性结构 D.只有根结点的二叉树是线性结构(分数:1.00)A. B.C.D.解析:解析 根据数据结构中各数据元素之间前后关系的复杂程度,可将数据结构分为两大类型:线性结构与非线性结构。如果一个非空的数据结构满足下列两个条件:有且只有一个根结点;每个结点最多有一个前驱,也最多有一个后继。则称该数据结构为线性结构,也叫做线性表。若不满足上述条件,则称之为非线性结构。线性表、栈、队列和线性链表都是线性结构,而二叉树是非线性结构。7.对如下图所示二叉树进行后序遍
28、历的结果为_。(分数:1.00)A.B.C.D. 解析:解析 执行后序遍历,依次执行以下操作: 首先按照后序遍历的顺序遍历根结点的左子树; 然后按照后序遍历的顺序遍历根结点的右子树; 最后访问根结点。8.下列数据结构中,能用二分法进行查找的是_。 A.顺序存储的有序线性表 B.线性链表 C.二叉链表 D.有序线性链表(分数:1.00)A. B.C.D.解析:解析 二分查找只适用于顺序存储的有序表。所谓有序表是指线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相等)。9.对于长度为 n 的线性表,在最坏的情况下,下列各排序法所对应的比较次数中正确的是_。 A.冒泡排序为 n/2 B.冒
29、泡排序为 n C.快速排序为 n D.快速排序为 n(n-1)/2(分数:1.00)A.B.C.D. 解析:解析 假设线性表的长度为 n,则在最坏的情况下,冒泡排序需要经过 n/2 遍的从前往后扫描和n/2 遍的从后往前扫描,需要比较次数为 n(n-1)/2。快速排序法在最坏的情况下,比较次数也是 n(n-1)/2。10.下列叙述中,不属于良好程序设计风格要求的是_。 A.程序的效率第一,清晰第二 B.程序的可读性好 C.程序中要有必要的注释 D.输入数据前要有提示信息(分数:1.00)A. B.C.D.解析:解析 著名的“清晰第一,效率第二”的论点已经成为主导的程序设计风格,所以选项 A 是
30、错误的,其余选项都是良好程序设计风格的要求。11.下列选项中不符合良好程序设计风格的是_。 A.源程序要文档化 B.数据说明的次序要规范化 C.避免滥用 goto 语句 D.模块设计要保证高耦合、高内聚(分数:1.00)A.B.C.D. 解析:解析 良好的程序设计风格使程序结构清晰合理,使程序代码便于维护。主要应注意和考虑的因素有:源程序要文档化;数据说明的次序要规范化;语句的结构应简单直接,不应该为提高效率而把语句复杂化,避免滥用 goto 语句;模块设计要保证低耦合、高内聚。12.下列选项中不属于结构化程序设计方法的是_。 A.自顶向下 B.逐步求精 C.模块化 D.可复用(分数:1.00
31、)A.B.C.D. 解析:解析 20 世纪 70 年代以来,提出了许多软件设计方法,主要包括:逐步求精,对复杂的问题,应设计一些子目标作过渡,逐步细化。自顶向下,程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后考虑局部目标。一开始不要过多追求细节,先从最上层总目标开始设计,逐步使问题具体化。模块化,一个复杂问题,肯定是由若干相对简单的问题构成。模块化是把程序要解决的总目标分解为分目标,再进一步分解为具体的小目标,把每个小目标称为一个模块。而可复用是面向对象程序设计的一个优点,不是结构化程序设计方法。13.在面向对象方法中,实现信息隐蔽是依靠_。 A.对象的继承 B.对象的多态 C.对象
32、的封装 D.对象的分类(分数:1.00)A.B.C. D.解析:解析 对象是由数据和操作组成的封装体,与客观实体有直接的对应关系。对象之间通过传递消息互相联系,以模拟现实世界中不同事物彼此之间的关系。面向对象方法的 3 个重要特性为:封装性、继承性和多态性。14.下列描述中,正确的是_。 A.程序就是软件 B.软件开发不受计算机系统的限制 C.软件既要是逻辑实体,又是物理实体 D.软件是程序、数据与相关文档的集合(分数:1.00)A.B.C.D. 解析:解析 计算机软件是计算机系统中与硬件相互依存的另一部分,包括程序、数据及相关文档的完整集合。软件具有以下特点:软件是一种逻辑实体,而不是物理实
33、体,具有抽象性;软件的生产过程与硬件不同,没有明显的制作过程:软件在运行、使用期间,不存在磨损、老化问题;软件的开发、运行对计算机系统具有不同程度的依赖性,这导致软件移植的问题;软件复杂性高,成本昂贵;软件开发涉及诸多的社会因素。15.从工程管理角度,软件设计一般分为两步完成,它们是_。 A.概要设计与详细设计 B.数据设计与接口设计 C.软件结构设计与数据设计 D.过程设计与数据设计(分数:1.00)A. B.C.D.解析:解析 从工程管理角度看,软件设计分两步完成:概要设计与详细设计。概要设计将软件需求转化为软件体系结构、确定系统级接口、全局数据结构或数据库模式;详细设计确立每个模块的实现
34、算法和局部数据结构,用适当方法表示算法和数据结构的细节。16.下列叙述中,正确的是_。 A.软件测试应该由程序开发者来完成 B.程序经调试后一般不需要再测试 C.软件维护只包括对程序代码的维护 D.以上 3 种说法都不对(分数:1.00)A.B.C.D. 解析:解析 程序调试的任务是诊断和改正程序中的错误。它与软件测试不同,软件测试是尽可能多地发现软件中的错误。先要发现软件的错误。然后借助于一定的调试工具去找出软件错误的具体位置。软件测试贯穿整个软件生命周期,调试主要在开发阶段。为了实现更好的测试效果,应该由独立的第三方来构造测试。软件的运行和维护是指将已交付的软件投入运行,并在运行使用中不断
35、地维护,根据新提出的需求进行必要而且可能地扩充和删改。17.软件调试的目的是_。 A.发现错误 B.更正错误 C.改善软件性能 D.验证软件的正确性(分数:1.00)A.B. C.D.解析:解析 软件调试的目的是诊断和改正程序中的错误,改正以后还需要进行测试。18.下列叙述中,正确的是_。 A.数据库系统是一个独立的系统,不需要操作系统的支持 B.数据库技术的根本目标是要解决数据的共享问题 C.数据库管理系统就是数据库系统 D.以上 3 种说法都不对(分数:1.00)A.B. C.D.解析:解析 数据库系统是由数据库(数据)、数据库管理系统(软件)、计算机硬件、操作系统及数据库管理员组成。作为
36、处理数据的系统,数据库技术的主要目的就是解决数据的共享问题。19.在数据库系统中,用户所见的数据模式为_。 A.概念模式 B.外模式 C.内模式 D.物理模式(分数:1.00)A.B. C.D.解析:解析 概念模式是数据库系统中对全局数据逻辑结构的描述,是全体用户(应用)公共数据视图,它主要描述数据的记录类型及数据间关系,还包括数据间的语义关系等。数据库管理系统的 3 级模式结构由外模式、模式、内模式组成。数据库的外模式也叫做用户级数据库,是用户所看到和理解的数据库,是从概念模式导出的子模式,用户可以通过子模式描述语言来描述用户级数据库的记录,还可以利用数据语言对这些记录进行操作。内模式(或存
37、储模式、物理模式)是指数据在数据库系统内的存储介质上的表示,是对数据的物理结构和存取方式的描述。20.下列说法中,正确的是_。 A.为了建立一个关系,首先要构造数据的逻辑关系 B.表示关系的二维表中各元组的每个分量还可以分成若干个数据项 C.一个关系的属性名称为关系模式 D.一个关系可以包含多个二维表(分数:1.00)A. B.C.D.解析:解析 元组已经是数据的最小单位,不可再分;关系的框架称为关系模式;关系框架与关系元组一起构成了关系,即一个关系对应一张二维表。选项 A 中,在建立关系前,需要先构造数据的逻辑关系是正确的。21.用树形结构表示实体之间联系的模型是_。 A.关系模型 B.网状
38、模型 C.层次模型 D.以上 3 个都是(分数:1.00)A.B.C. D.解析:解析 数据模型是指反映实体及其实体间联系的数据组织的结构和形式,有关系模型、网状模型和层次模型等。其中层次模型实际上是以记录型为结点构成的树,它把客观问题抽象为一个严格的、自上而下的层次关系,所以,它的基本结构是树形结构。22.设有以下 3 个关系表,如表 1表 3 所示。 B表1 关系表一/BRA B C1 1 22 2 3B表2 关系表二/BSA B C3 1 3B表3 关系表三/BTA B C1 1 22 2 33 1 3下列操作中正确的是_。 A.T=RS B.T=RS C.T=RS D.T=R/S (分
39、数:1.00)A.B.C. D.解析:解析 集合的并、交、差、广义笛卡儿积:设有两个关系为 R 和 S,它们具有相同的结构,R 和 S的并是由属于 R 和 S,或者同时属于 R 和 S 的所有元组组成,记作 RS;R 和 S 的交是由既属于 R 又属于S 的所有元组组成,记作 RS;R 和 S 的差是由属于 R 但不属于 S 的所有元组组成,记作 R-S;元组的前n 个分量是 R 的一个元组,后 m 个分量是 S 的一个元组,若 R 有 K1个元组,S 有 K2个元组,则 RS 有K1K2个元组,记为 RS。从表 3 中可见,关系 T 是关系 R 和关系 S 的简单扩充,而扩充的符号为“”,故
40、答案为 T=RS。23.在下列关系运算中,不改变关系表中的属性个数但能减少元组个数的是_。 A.并 B.交 C.投影 D.笛卡尔乘积(分数:1.00)A.B. C.D.解析:解析 关系的基本运算有两类:传统的集合运算(并、交、差)和专门的关系运算(选择、投影、连接)。集合的并、交、差:设有两个关系为 R 和 S,它们具有相同的结构,R 和 S 的并是由属于 R 和 S,或同时属于 R 和 S 的所有元组组成,记作 RS;R 和 S 的交是由既属于 R 又属于 S 的所有元组组成,记作RS;R 和 S 的差是由属于 R 但不属于 S 的所有元组组成,记作 R-S。因此,在关系运算中,不改变关系表
41、中的属性个数但能减少元组(关系)个数的只能是集合的交。24.在 E-R 图中,用来表示实体之间联系的图形是_。 A.矩形 B.椭圆形 C.菱形 D.平行四边形(分数:1.00)A.B.C. D.解析:解析 E-R 图中规定:用矩形表示实体,椭圆形表示实体属性,菱形表示实体关系。25.对下列二叉树进行中序遍历的结果是_。(分数:1.00)A. B.C.D.解析:26.按照“后进先出”原则组织数据的数据结构是_。 A.队列 B.栈 C.双向链表 D.二叉树(分数:1.00)A.B. C.D.解析:27.下列叙述中,正确的是_。 A.一个逻辑数据结构只能有一种存储结构 B.数据的逻辑结构属于线性结构
42、,存储结构属于非线性结构 C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率 D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率(分数:1.00)A.B.C.D. 解析:28.下面选项中,不属于面向对象程序设计特征的是_。 A.继承性 B.多态性 C.类比性 D.封装性(分数:1.00)A.B.C. D.解析:29.下列叙述中,正确的是_。 A.软件交付使用后还需要进行维护 B.软件一旦交付使用就不需要再进行维护 C.软件交付使用后其生命周期就结束 D.软件维护是指修复程序中被破坏的指令(分数:1.00)A. B.C.D.解析:30.下列描述中,正
43、确的是_。 A.软件工程只是解决软件项目的管理问题 B.软件工程主要解决软件产品的生产率问题 C.软件工程的主要思想是强调在软件开发过程中需要应用工程化原则 D.软件工程只是解决软件开发中的技术问题(分数:1.00)A.B.C. D.解析:31.在软件设计中,不属于过程设计工具的是_。 A.PDL(过程设计语言) B.PAD 图 C.N-S 图 D.DFD 图(分数:1.00)A.B.C.D. 解析:32.数据库设计的 4 个阶段是需求分析、概念设计、逻辑设计和_。 A.编码设计 B.测试阶段 C.运行阶段 D.物理设计(分数:1.00)A.B.C.D. 解析:33.数据库技术的根本目标是要解决数据的_。 A.存储问题 B.共享问题 C.安全问题 D.保护问题(分数:1.00)A.B. C.D.解析:34.数据库独立性是数据库技术的重要特点之一。所谓数据独立性是指_。 A.数据与程序独立存放 B.不同的数据被存放在不同的文件中 C.不同的数据只能被对应的应用程序所使用 D.以上 3 种说法都不对(分数:1.00)A.B.C.D. 解析:35.下列关于栈的叙述,正确的是_。 A.栈是非线性结构 B.栈是一种树状结构 C.栈具有“先进先出”的特征 D.栈具有“后进先出”的特征(分数:1.00)A.B.C.D. 解析:36.结构化程序设计所规定的 3 种基本控制结构