首页 vf二级考试复习资料

vf二级考试复习资料

举报
开通vip

vf二级考试复习资料vf二级考试复习资料 些与计算机硬件、软件有关的因素,可以认为一个特定算法 "运行工作量"的大小,只依赖于问题的规模(通常用整数n 第1章 数据结构与算法 表示),它是问题规模的函数。即 算法的工作量=f(n) 2.算法的空间复杂度 经过对部分考生的调查以及对近年真题的总结分析, 算法的空间复杂度是指执行这个算法所需要的内存空笔试部分经常考查的是算法复杂度、数据结构的概念、栈、 间。 二叉树的遍历、二分法查找,读者应对此部分进行重点学习。 一个算法所占用的存储空间包括算法程序所占的空间、详细重点学习知识点: ...

vf二级考试复习资料
vf二级考试复习资料 些与计算机硬件、软件有关的因素,可以认为一个特定算法 "运行工作量"的大小,只依赖于问题的规模(通常用整数n 第1章 数据结构与算法 表示),它是问题规模的函数。即 算法的工作量=f(n) 2.算法的空间复杂度 经过对部分考生的调查以及对近年真题的总结 分析 定性数据统计分析pdf销售业绩分析模板建筑结构震害分析销售进度分析表京东商城竞争战略分析 , 算法的空间复杂度是指执行这个算法所需要的内存空笔试部分经常考查的是算法复杂度、数据结构的概念、栈、 间。 二叉树的遍历、二分法查找,读者应对此部分进行重点学习。 一个算法所占用的存储空间包括算法程序所占的空间、详细重点学习知识点: 输入的初始数据所占的存储空间以及算法执行过程中所需1(算法的概念、算法时间复杂度及空间复杂度的概念 要的额外空间。其中额外空间包括算法程序执行过程中的工2(数据结构的定义、数据逻辑结构及物理结构的定义 作单元以及某种数据结构所需要的附加存储空间。如果额外3(栈的定义及其运算、线性链表的存储方式 空间量相对于问题规模来说是常数,则称该算法是原地工作4(树与二叉树的概念、二叉树的基本性质、完全二叉 的。在许多实际问题中,为了减少算法所占的存储空间,通树的概念、二叉树的遍历 常采用压缩存储技术,以便尽量减少不必要的额外空间。 5(二分查找法 6(冒泡排序法 疑难解答:算法的工作量用什么来计算, 算法的工作量用算法所执行的基本运算次数来计算,而算法所执 行的基本运算次数是问题规模的函数,即算法的工作量=f(n),其中n 是问题的规模。 1.1算法 1.2数据结构的基本概念 考点1 算法的基本概念 考试链接: 考点3 数据结构的定义 考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现~考试链接: 分值为2分~此考点为识记内容~读者还应该了解算法中对数据的基本运考点3在笔试考试中~是一个经常考查的内容~在笔试考试中出现的算。 几率为70%,主要是以选择的形式出现~分值为2分~此考点为识记内容~计算机解题的过程实际上是在实施某种算法,这种算法读者还应该识记数据的逻辑结构和存储结构的概念。 称为计算机算法。 数据结构作为计算机的一门学科,主要研究和讨论以下1(算法的基本特征:可行性、确定性、有穷性、拥有三个方面: 足够的情报。 (1)数据集合中个数据元素之间所固有的逻辑关系,2(算法的基本要素: 即数据的逻辑结构; (1)算法中对数据的运算和操作 (2)在对数据元素进行处理时,各数据元素在计算机一个算法由两种基本要素组成:一是对数据对象的运算和操中的存储关系,即数据的存储结构; 作;二是算法的控制结构。 (3)对各种数据结构进行的运算。 在一般的计算机系统中,基本的运算和操作有以下4类:算数据:是对客观事物的符号表示,在计算机科学中是指术运算、逻辑运算、关系运算和数据传输。 所有能输入到计算机中并被计算机程序处理的符号的总称。 (2)算法的控制结构:算法中各操作之间的执行顺序数据元素:是数据的基本单位,在计算机程序中通常作称为算法的控制结构。 为一个整体进行考虑和处理。 描述算法的工具通常有传统流程图、N-S结构化流程图、数据对象:是性质相同的数据元素的集合,是数据的一算法描述语言等。一个算法一般都可以用顺序、选择、循环个子集。 3种基本控制结构组合而成。 数据的逻辑结构是对数据元素之间的逻辑关系的描述, 考点2 算法复杂度 它可以用一个数据元素的集合和定义在此集合中的若干关 系来表示。数据的逻辑结构有两个要素:一是数据元素的集考试链接: 合,通常记为D;二是D上的关系,它反映了数据元素之间的考点2在笔试考试中~是一个经常考查的内容~在笔试考试中出现的 前后件关系,通常记为R。一个数据结构可以表示成 几率为70%,主要是以选择的形式出现~分值为2分~此考点为重点识记 B=(D,R) 内容~读者还应该识记算法时间复杂度及空间复杂度的概念。 其中B表示数据结构。为了反映D中各数据元素之间的前1.算法的时间复杂度 后件关系,一般用二元组来表示。 算法的时间复杂度是指执行算法所需要的计算工作量。 数据的逻辑结构在计算机存储空间中的存放形式称为同一个算法用不同的语言实现,或者用不同的编译程序 数据的存储结构(也称数据的物理结构)。 进行编译,或者在不同的计算机上运行,效率均不同。这表 由于数据元素在计算机存储空间中的位置关系可能与明使用绝对的时间单位衡量算法的效率是不合适的。撇开这 1 逻辑关系不同,因此,为了表示存放在计算机存储空间中的到栈顶指针指向的位置。当栈顶指针已经指向存储空间的最各数据元素之间的逻辑关系(即前后件关系),在数据的存后一个位置时,说明栈空间已满,不可能再进行入栈操作。储结构中,不仅要存放各数据元素的信息,还需要存放各数 这种情况称为栈"上溢"错误。 据元素之间的前后件关系的信息。 (2)退栈运算:退栈是指取出栈顶元素并赋给一个指 一种数据的逻辑结构根据需要可以表示成多种存储结定的变量。首先将栈顶元素(栈顶指针指向的元素)赋给一构,常用的存储结构有顺序、链接、索引等存储结构。而采个指定的变量,然后将栈顶指针减一(即top减1)。当栈顶指用不同的存储结构,其数据处理的效率是不同的。因此,在针为0时,说明栈空,不可进行退栈操作。这种情况称为栈进行数据处理时,选择合适的存储结构是很重要的。 的"下溢"错误。 (3)读栈顶元素:读栈顶元素是指将栈顶元素赋给一考点4 线性结构与非线性结构 个指定的变量。这个运算不删除栈顶元素,只是将它赋给一 考试链接: 个变量,因此栈顶指针不会改变。当栈顶指针为0时,说明 考点4在笔试考试中~虽然说不是考试经常考查的内容~但读者还是栈空,读不到栈顶元素。 对此考点有所了解~在笔试考试中出现的几率为30%,主要是以填空题出 现的形式出现~分值为2分~此考点为识记内容。 小技巧:栈是按照"先进后出"或"后进先出"的原则组织数据, 根据数据结构中各数据元素之间前后件关系的复杂程但是出栈方式有多种选择,在考题中经常考查各种不同的出栈方式。 度,一般将数据结构分为两大类型:线性结构与非线性结构。 考点6 线性链表的基本概念 如果一个非空的数据结构满足下列两个条件: 考试链接: (1)有且只有一个根结点; 考点6在笔试考试中出现的几率为30%,主要是以选择的形式出现~(2)每一个结点最多有一个前件,也最多有一个后件。 分值为2分~此考点为识记内容。重点识记结点的组成。 则称该数据结构为线性结构。线性结构又称线性表。在 一个线性结构中插入或删除任何一个结点后还应是线性结在链式存储方式中,要求每个结点由两部分组成:一部构。如果一个数据结构不是线性结构,则称之为非线性结构。 分用于存放数据元素值,称为数据域,另一部分用于存放指 针,称为指针域。其中指针用于指向该结点的前一个或后一 疑难解答:空的数据结构是线性结构还是非线性结构, 个结点(即前件或后件)。 一个空的数据结构究竟是属于线性结构还是属于非线性结构,这链式存储方式既可用于表示线性结构,也可用于表示非要根据具体情况来确定。如果对该数据结构的算法是按线性结构的规线性结构。 则来处理的,则属于线性结构;否则属于非线性结构。 (1)线性链表 线性表的链式存储结构称为线性链表。 1.3栈及线性链表 在某些应用中,对线性链表中的每个结点设置两个指 针,一个称为左指针,用以指向其前件结点;另一个称为右考点5 栈及其基本运算 指针,用以指向其后件结点。这样的表称为双向链表。 考试链接: (2)带链的栈 考点5在笔试考试中~是一个必考的内容,在笔试考试中出现的几率栈也是线性表,也可以采用链式存储结构。带链的栈可为100%~主要是以选择的形式出现~分值为2分~此考点为重点掌握内容~以用来收集计算机存储空间中所有空闲的存储结点,这种带读者应该掌握栈的运算 。 链的栈称为可利用栈。 1(栈的基本概念 栈是限定只在一端进行插入与删除的线性表,通常称插 疑难解答:在链式结构中,存储空间位置关系与逻辑关系是什么, 在链式存储结构中,存储数据结构的存储空间可以不连续,各数入、删除的这一端为栈顶,另一端为栈底。当表中没有元素 据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元时称为空栈。栈顶元素总是后被插入的元素,从而也是最先 素之间的逻辑关系是由指针域来确定的。 被删除的元素;栈底元素总是最先被插入的元素,从而也是 最后才能被删除的元素。栈是按照"先进后出"或"后进先出" 1.4树与二叉树 的原则组织数据的。 2(栈的顺序存储及其运算 考点7 树与二叉树及其基本性质 用一维数组S(1?m)作为栈的顺序存储空间,其中m 为最大容量。 考试链接: 在栈的顺序存储空间S(1?m)中,S(bottom)为栈底考点7在笔试考试中~是一个必考的内容~在笔试考试中出现的几率元素,S(top)为栈顶元素。top=0表示栈空;top=m表示栈为100%~主要是以选择的形式出现~有时也有出现在填空题中~分值为2满。 分~此考点为重点掌握内容。重点识记树及二叉树的性质。 栈的基本运算有三种:入栈、退栈与读栈顶元素。 误区警示: (1)入栈运算:入栈运算是指在栈顶位置插入一个新满二叉树也是完全二叉树~而完全二叉树一般不是满二叉树。应该注元素。首先将栈顶指针加一(即top加1),然后将新元素插入意二者的区别。 2 1、树的基本概念 下结论: 树(tree)是一种简单的非线性结构。在树结构中,每一?若k=1,则该结点为根结点,它没有父结点;若k>1,个结点只有一个前件,称为父结点,没有前件的结点只有一则该结点的父结点编号为INT(k/2)。 个,称为树的根结点。每一个结点可以有多个后件,它们称?若2k?n,则编号为k的结点的左子结点编号为2k;否为该结点的子结点。没有后件的结点称为叶子结点。 则该结点无左子结点(显然也没有右子结点)。 在树结构中,一个结点所拥有的后件个数称为该结点的?若2k+1?n,则编号为k的结点的右子结点编号为度。叶子结点的度为0。在树中,所有结点中的最大的度称2k+1;否则该结点无右子结点。 为树的度。 考点8 二叉树的遍历 2、二叉树及其基本性质 考试链接: (1)二叉树的定义 二叉树是一种很有用的非线性结构,具有以下两个特考点8在笔试考试中考核几率为30%,分值为2分~读者应该熟练掌点: 握各种遍历的具体算法~能由两种遍历的结果推导另一种遍历的结果。 ?非空二叉树只有一个根结点; 在遍历二叉树的过程中,一般先遍历左子树,再遍历右?每一个结点最多有两棵子树,且分别称为该结点的左子树。在先左后右的原则下,根据访问根结点的次序,二叉子树和右子树。 树的遍历分为三类:前序遍历、中序遍历和后序遍历。 由以上特点可以看出,在二叉树中,每一个结点的度最(1)前序遍历:先访问根结点、然后遍历左子树,最大为2,即所有子树(左子树或右子树)也均为二叉树,而后遍历右子树;并且,在遍历左、右子树时,仍然先访问根树结构中的每一个结点的度可以是任意的。另外,二叉树中结点,然后遍历左子树,最后遍历右子树。 的每个结点的子树被明显地分为左子树和右子树。在二叉树(2)中序遍历:先遍历左子树、然后访问根结点,最中,一个结点可以只有左子树而没有右子树,也可以只有右后遍历右子树;并且,在遍历左、右子树时,仍然先遍历左子树而没有左子树。当一个结点既没有左子树也没有右子树子树,然后访问根结点,最后遍历右子树。 时,该结点即为叶子结点。 (3)后序遍历:先遍历左子树、然后遍历右子树,最(2)二叉树的基本性质 后访问根结点;并且,在遍历左、右子树时,仍然先遍历左二叉树具有以下几个性质: 子树,然后遍历右子树,最后访问根结点。 性质1:在二叉树的第k层上,最多有2k-1(k?1)个结 点; 疑难解答:树与二叉树的不同之处是什么, 性质2:深度为m的二叉树最多有2m-1个结点; 在二叉树中,每一个结点的度最大为2,即所有子树(左子树或 性质3:在任意一棵二叉树中,度为0的结点(即叶子结右子树)也均为二叉树,而树结构中的每一个结点的度可以是任意的。 点)总是比度为2的结点多一个。 性质4:具有n个结点的二叉树,其深度至少为,logn,21.5查找技术 +1,其中,logn,表示取logn的整数部分。 22 考点9 顺序查找 小技巧:在二叉树的遍历中,无论是前序遍历,中序遍历还考试链接: 是后序遍历,二叉树的叶子结点的先后顺序都是不变的。 考点9在笔试考试中考核几率在30%~一般出现选择题中~分值为2分~3、满二叉树与完全二叉树 读者应该具体掌握顺序查找的算法。 满二叉树是指这样的一种二叉树:除最后一层外,每一查找是指在一个给定的数据结构中查找某个指定的元层上的所有结点都有两个子结点。在满二叉树中,每一层上素。从线性表的第一个元素开始,依次将线性表中的元素与的结点数都达到最大值,即在满二叉树的第k层上有2k-1个结被查找的元素相比较,若相等则表示查找成功;若线性表中点,且深度为m的满二叉树有2m,1个结点。 所有的元素都与被查找元素进行了比较但都不相等,则表示完全二叉树是指这样的二叉树:除最后一层外,每一层查找失败。 上的结点数均达到最大值;在最后一层上只缺少右边的若干在下列两种情况下也只能采用顺序查找: 结点。 (1)如果线性表为无序表,则不管是顺序存储结构还对于完全二叉树来说,叶子结点只可能在层次最大的两是链式存储结构,只能用顺序查找。 层上出现:对于任何一个结点,若其右分支下的子孙结点的(2)即使是有序线性表,如果采用链式存储结构,也最大层次为p,则其左分支下的子孙结点的最大层次或为p,只能用顺序查找。 或为p+1。 考点10 二分法查找 完全二叉树具有以下两个性质: 性质5:具有n个结点的完全二叉树的深度为,logn,+1。 2考试链接: 性质6:设完全二叉树共有n个结点。如果从根结点开始,考点10在笔试考试中考核几率为30%~一般出现填空题中~分值为2按层次(每一层从左到右)用自然数1,2,……,n给结点分~考核比较多查找的比较次数~读者应该具体掌握二分查找法的算法。 进行编号,则对于编号为k(k=1,2,……,n)的结点有以二分法只适用于顺序存储的,按非递减排列的有序表, 3 其方法如下: 【例1】算法的时间复杂度取决于_______。(考点2) 设有序线性表的长度为n,被查找的元素为i, A)问题的规模 B)待处理的 (1)将i与线性表的中间项进行比较; 数据的初态 (2)若i与中间项的值相等,则查找成功; C)问题的难度 D)A)和B) (3)若i小于中间项,则在线性表的前半部分以相同的解析:算法的时间复杂度不仅与问题的规模有关,在同方法查找; 一个问题规模下,而且与输入数据有关。即与输入数据所有 (4)若i大于中间项,则在线性表的后半部分以相同的的可能取值范围、输入各种数据或数据集的概率有关。 方法查找。 答案:D) 【例2】在数据结构中,从逻辑上可以把数据结构分成 疑难解答:二分查找法适用于哪种情况, _______。(考点3) 二分查找法只适用于顺序存储的有序表。在此所说的有序表是指A)内部结构和外部结构 B)线性线性表中的元素按值非递减排列(即从小到大,但允许相邻元素值相结构和非线性结构 等)。 C)紧凑结构和非紧凑结构 D)动态 这个过程一直进行到查找成功或子表长度为0为止。 结构和静态结构 对于长度为n的有序线性表,在最坏情况下,二分查找解析:逻辑结构反映数据元素之间的逻辑关系,线性结只需要比较logn次。 2构表示数据元素之间为一对一的关系,非线性结构表示数据 元素之间为一对多或者多对一的关系,所以答案为B)。 1.6排序技术 答案:B) 【例3】以下_______不是栈的基本运算。(考点5) 考点11 交换类排序法 A)判断栈是否为素空 B)将栈 考试链接: 置为空栈 考点11属于比较难的内容~一般以选择题的形式考查~考核几率为C)删除栈顶元素 D)删除30%,分值约为2分~读者应该熟练掌握几种排序算法的基本过程。 栈底元素 冒泡排序法和快速排序法都属于交换类排序法。 解析:栈的基本运算有:入栈,出栈(删除栈顶元素), (1)冒泡排序法 初始化、置空、判断栈是否为空或满、提取栈顶元素等,对 首先,从表头开始往后扫描线性表,逐次比较相邻两个栈的操作都是在栈顶进行的。 元素的大小,若前面的元素大于后面的元素,则将它们互换,答案:D) 不断地将两个相邻元素中的大者往后移动,最后最大者到了【例4】链表不具备的特点是_______。(考点6) 线性表的最后。 A)可随机访问任意一个结点 B) 然后,从后到前扫描剩下的线性表,逐次比较相邻两个插入和删除不需要移动任何元素 元素的大小,若后面的元素小于前面的元素,则将它们互换,C)不必事先估计存储空间 D)不断地将两个相邻元素中的小者往前移动,最后最小者到了所需空间与其长度成正比 线性表的最前面。 解析:顺序表可以随机访问任意一个结点,而链表必须 对剩下的线性表重复上述过程,直到剩下的线性表变空从第一个数据结点出发,逐一查找每个结点。所以答案为A)。 为止,此时已经排好序。 答案:A) 在最坏的情况下,冒泡排序需要比较次数为n(n,1)/2。 【例5】已知某二叉树的后序遍历序列是DACBE,中序 (2)快速排序法 遍历序列是DEBAC,则它的前序遍历序列是_______。(考点 它的基本思想是:任取待排序序列中的某个元素作为基8) 准(一般取第一个元素),通过一趟排序,将待排元素分为A)ACBED B)DEABC 左右两个子序列,左子序列元素的排序码均小于或等于基准C)DECAB D)EDBAC 元素的排序码,右子序列的排序码则大于基准元素的排序解析:后序遍历的顺序是"左子树,右子树,根结点";码,然后分别对两个子序列继续进行排序,直至整个序列有中序遍历顺序是"左子树,根结点,右子树";前序遍历顺序序。 是"根结点,左子树,右子树"。根据各种遍历算法,不难得 出前序遍历序列是EDBAC。所以答案为D)。 疑难解答:冒泡排序和快速排序的平均执行时间分别是多少, 答案:D) 2冒泡排序法的平均执行时间是O(n),而快速排序法的平均执行【例6】设有一个已按各元素的值排好序的线性表(长时间是O(nlogn)。 2度大于2),对给定的值k,分别用顺序查找法和二分查找法 查找一个与k相等的元素,比较的次数分别是s和b,在查找不 成功的情况下,s和b的关系是_______。(考点9) 1.7 例题详解 A)s=b B)s>b C)s 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的原则、面向对象方的次数为n+1。二分查找查找不成功的关键字比较次数为法的基本概念,读者应对此部分进行重点学习。 ,logn,+1。当n?2时,显然n+1>,logn,+1。 详细重点学习知识点: 22 答案:B) 1(结构化程序设计方法的四个原则 【例7】在快速排序过程中,每次划分,将被划分的表2(对象、类、消息、继承的概念、类与实例的区别 (或子表)分成左、右两个子表,考虑这两个子表,下列结 论一定正确的是_______。(考点11) 2.1结构化程序设计 A)左、右两个子表都已各自排好序 B)左边子表中的元素都不大于右边子表中的元素 考点1 结构化程序设计的原则 C) 左边子表的长度小于右边子表的长度 考试链接: D)左、右两个子表中元素的平均值相等 解析:快速排序基本思想是:任取待排序表中的某个元考点1在笔试考试中出现的几率为30%,主要是以选择题的形式出素作为基准(一般取第一个元素),通过一趟排序,将待排现~分值为2分~此考点为识记内容~读者应该识记结构化程序设计方法元素分为左右两个子表,左子表元素的排序码均小于或等于的四个主要原则。 基准元素的排序码,右子表的排序码则大于基准元素的排序20世纪70年代提出了"结构化程序设计"的思想和方法。码,然后分别对两个子表继续进行排序,直至整个表有序。 结构化程序设计方法引入了工程化思想和结构化思想,使大答案:B) 型软件的开发和编程得到了极大的改善。结构化程序设计方二、填空题 法的主要原则为:自顶向下、逐步求精、模块化和限制使用【例1】问题处理 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 的正确而完整的描述称为goto语句。 _______。(考点1) 解析:计算机解题的过程实际上是在实施某种算法,这 疑难解答:如何进行自顶向下设计方法, 种算法称为计算机算法。 程序设计时,应先考虑总体,后考虑细节;先考虑全局目标,后答案:算法 考虑局部目标;不要一开始就过多追求众多的细节,先从最上层总目【例2】一个空的数据结构是按线性结构处理的,则属标开始设计,逐步使问题具体化。 于_______。(考点4) 解析:一个空的数据结构是线性结构或是非线性结构,2.2面向对象的程序设计 要根据具体情况而定。如果对数据结构的运算是按线性结构 考点2 面向对象方法的基本概念 来处理的,则属于线性结构,否则属于非线性结构。 答案:线性结构 考试链接: 【例3】设树,的度为,,其中度为,、,、,和,的考点2在笔试考试中~是一个经常考查的内容~在笔试考试中出现的结点的个数分别为,、,、,、,,则,中叶子结点的个数几率为70%,主要是以填空题的形式出现~分值为2分~此考点为重点识为_______。(考点7) 记内容~读者应该识记几个基本要素的定义、对象的特征以及消息、继承、解析:根据树的性质:树的结点数等于所有结点的度与对类的定义。 应的结点个数乘积之和加,。 误区警示: 因此树的结点数为,×,,,×,,,×,,,×,当使用"对象"这个术语时~既可以指一个具体的对象~也可以泛指一,,,16。叶子结点数目等于树结点总数减去度不为,的结般的对象~但是当使用"实例"这个术语时~必须是指一个具体的对象。 点数之和,即16,(,,,,,,,),,。 面向对象方法涵盖对象及对象属性与方法、类、继承、 答案:8 多态性几个基本要素。 【例4】二分法查找的存储结构仅限于_______且是有序(1)对象 的。(考点10) 通常把对对象的操作也称为方法或服务。 解析:二分查找,也称折半查找,它是一种高效率的查属性即对象所包含的信息,它在设计对象时确定,一般找方法。但二分查找有条件限制:要求表必须用顺序存储结只能通过执行对象的操作来改变。属性值应该指的是纯粹的构,且表中元素必须按关键字有序(升序或降序均可)。 数据值,而不能指对象。 答案:顺序存储结构 操作描述了对象执行的功能,若通过信息的传递,还可 以为其他对象使用。 对象具有如下特征:标识惟一性、分类性、多态性、封 装性、模块独立性。 (2)类和实例 第2章 程序设计基础 类是具有共同属性、共同方法的对象的集合。它描述了 属于该对象类型的所有对象的性质,而一个对象则是其对应 类的一个实例。 经过对部分考生的调查以及对近年真题的总结分析, 5 类是关于对象性质的描述,它同对象一样,包括一组数【例3】面向对象的开发方法中,类与对象的关系是据属性和在数据上的一组合法操作。 _______。(考点2) (3)消息 A)抽象与具体 B)具体与抽 消息是实例之间传递的信息,它请求对象执行某一处理 象 或回答某一要求的信息,它统一了数据流和控制流。 C)部分与整体 D)整体与部 一个消息由三部分组成:接收消息的对象的名称、消息分 标识符(消息名)和零个或多个参数。 解析:现实世界中的很多事物都具有相似的性质,把具 (4)继承 有相似的属性和操作的对象归为类,也就是说类是具有共同 广义地说,继承是指能够直接获得已有的性质和特征,属性、共同方法的对象的集合,是对对象的抽象。它描述了而不必重复定义它们。 该对象类型的所有对象的性质,而一个对象则是对应类的一 继承分为单继承与多重继承。单继承是指,一个类只允个具体实例。所以本题正确答案为A)项。 许有一个父类,即类等级为树形结构。多重继承是指,一个答案:A) 类允许有多个父类。 (5)多态性 二、填空题 对象根据所接收的消息而做出动作,同样的消息被不同【例1】在面向对象方法中,使用已经存在的类定义作的对象接收时可导致完全不同的行动,该现象称为多态性。 为基础建立新的类定义,这样的技术叫做_______。(考点2) 疑难解答:能举一下现实中的对象及其属性和操作吗, 解析:继承是面向对象方法的一个主要特征。继承是使用 一辆汽车是一个对象,它包含了汽车的属性(如颜色、型号等)已有的类定义作为基础建立新类的定义技术。已有的类可当 及其操作(如启动、刹车等)。一个窗口是对象,它包含了窗口作基类来引用,则新类相应地可当作派生类来引用。 的属性(如大小、颜色等)及其操作(如打开、关闭等)。 答案:继承 【例2】对象的基本特点包括_______、分类性、多态性、 封装性和模块独立性好等5个特点。(考点2) 解析:对象具有如下的基本特点: (1)标识惟一性。对象是可区分的,并且由对象的内在本 质来区分; (2)分类性。可以将具有相同属性和操作的对象抽象成类; 2.3 例题详解 (3)多态性。同一个操作可以是不同对象的行为; 一、选择题 (4)封装性。只能看到对象的外部特征,无需知道数据的 【例1】结构化程序设计方法提出于_______。(考点1) 具体结构以及实现操作的算法; A)20世纪50年代 B)20世纪60年代 (5)模块独立性。面向对象是由数据及可以对这些数据施 C)20世纪70年代 D)20世纪80年代 加的操作所组成的统一体。 解析:20世纪70年代提出了"结构化程序设计(structured 答案:标识惟一性 programming)"的思想和方法。结构化程序设计方法引入了【例3】对象根据所接收的消息而做出动作,同样的消工程化思想和结构化思想,使大型软件的开发和编程得到了息被不同的对象所接收时可能导致完全不同的行为,这种现极大的改善。 象称为_______。(考点2) 答案:C) 解析:对象根据所接收的消息而做出动作,同样的消息 【例2】结构化程序设计方法的主要原则有下列4项,不被不同的对象接收时可导致完全不同的行为,该现象称为多正确的是_______。(考点1) 态性。 A)自下向上 B)逐步求精 答案:多态性 C)模块化 D)限制使用goto 语句 解析:结构化程序设计方法的主要原则为: (1)自顶向下:即先考虑总体,后考虑细节;先考虑 全局目标,后考虑局部目标。 第3章 软件工程基础 (2)逐步求精:对复杂问题,应设计一些子目标作过 渡,逐步细化。 经过对部分考生的调查以及对近年真题的总结分析,(3)模块化:把程序要解决的总目标分解为分目标,笔试部分经常考查的是软件生命周期、软件设计的基本原再进一步分解为具体的小目标,把每个小目标称为一个模理,软件测试的目的、软件调试的基本概念,读者应对此部块。 分进行重点学习。 (4)限制使用goto语句。 详细重点学习知识点: 答案:A) 1(软件的概念、软件生命周期的概念及各阶段所包含 6 的活动 2(概要设计与详细设计的概念、模块独立性及其度量 的 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 、详细设计常用的工具 3(软件测试的目的、软件测试的4个步骤、 4(软件调试的任务 3.1软件工程基本概念 考点1 软件定义与软件特点 考试链接: 考点1在笔试考试中~是一个经常考查的内容~考核的几率为70%,主 要是以选择题的形式出现~分值为2分~此考点为识记内容~读者应该识 记软件的定义~特点及其分类。 软件指的是计算机系统中与硬件相互依存的另一部分, 包括程序、数据和相关文档的完整集合。程序是软件开发人 员根据用户需求开发的、用程序设计语言描述的、适合计算图3,1软件生命周期 机执行的指令序列。数据是使程序能正常操纵信息的数据结还可以将软件生命周期分为如上图所示的软件定义、软构。文档是与程序的开发、维护和使用有关的图文资料。可件开发和软件运行维护3个阶段。 见,软件由两部分组成: 生命周期的主要活动阶段是:可行性研究与 计划 项目进度计划表范例计划下载计划下载计划下载课程教学计划下载 制定、 (1)机器可执行的程序和数据; 需求分析、软件设计、软件实施、软件测试及运行与维护。 (2)机器不可执行的,与软件开发、运行、维护、使 3.2结构化设计方法 用等有关的文档。 软件的特点: 考点3 软件设计的基本概念 (1)软件是逻辑实体,而不是物理实体,具有抽象性; (2)没有明显的制作过程,可进行大量的复制; 考试链接: 考点3在笔试考试中~是一个经常考查的内容~考核中几率为70%,主(3)使用期间不存在磨损、老化问题; 分~此考点为重点掌握内容~读者应要是以选择题的形式出现~分值为2(4)软件的开发、运行对计算机系统具有依赖性; 该识记模块独立性中的耦合性和内聚性。 (5)软件复杂性高,成本昂贵; 误区警示: (6)软件开发涉及诸多社会因素。 在程序结构中~各模块的内聚性越强~则耦合性越弱。软件设计应尽根据应用目标的不同,软件可分应用软件、系统软件和 量做到高内聚~低耦合~即减弱模块之间的耦合性和提高模块内的内聚性~支撑软件(或工具软件)。 有利于提高模块的独立性。 1(软件设计的基础 小提示:应用软件是为解决特定领域的应用而开发的软件; 系统软件是计算机管理自身资源,提高计算机使用效率并为计算机用从技术观点上看,软件设计包括软件结构设计、数据设户提供各种服务的软件;支撑软件是介于两者之间,协助用户开发软计、接口设计、过程设计。 件的工具性软件。 (1)结构设计定义软件系统各主要部件之间的关系; (2)数据设计将分析时创建的模型转化为数据结构的考点2 软件工程过程与软件生命周期 定义; 考试链接: (3)接口设计是描述软件内部、软件和协作系统之间 考点2在笔试考试中~在笔试考试中出现的几率为30%,主要是以选择以及软件与人之间如何通信; 题的形式出现~分值为2分~此考点为识记内容~读者应该识记软件生命(4)过程设计则是把系统结构部件转换为软件的过程周期 的定义~主要活动阶段及其任务。 性描述。 软件产品从提出、实现、使用维护到停止使用退役的过从工程管理角度来看,软件设计分两步完成:概要设计程称为软件生命周期。一般包括可行性分析研究与需求分和详细设计。 析、设计、实现、测试、交付使用以及维护等活动,如图3(1)概要设计将软件需求转化为软件体系结构、确定,1所示。 系统级接口、全局数据结构或数据库模式; (2)详细设计确立每个模块的实现算法和局部数据结 构,用适当方法表示算法和数据结构的细节。 2(软件设计的基本原理 (1)抽象:软件设计中考虑模块化解决方案时,可以 7 定出多个抽象级别。抽象的层次从概要设计到详细设计逐步PAD图表示5种基本控制结构,即顺序型、选择型、多分降低。 支选择型、WHILE重复型和UNTIL重复型。 (2)模块化:模块是指把一个待开发的软件分解成若过程设计语言(PDL)也称为结构化的语言和伪码,它干小的简单的部分。模块化是指解决一个复杂问题时自顶向是一种混合语言,采用英语的词汇和结构化程序设计语言,下逐层把软件系统划分成若干模块的过程。 类似编程语言。 (3)信息隐蔽:信息隐蔽是指在一个模块内包含的信PDL可以由编程语言转换得到,也可以是专门为过程描息(过程或数据),对于不需要这些信息的其他模块来说是述而设计的。 不能访问的。 (4)模块独立性:模块独立性是指每个模块只完成系 疑难解答:程序流程图,N-S图,PAD图的控制结构的异同点是什统要求的独立的子功能,并且与其他模块的联系最少且接口 么, 简单。模块的独立程度是评价设计好坏的重要度量标准。衡 相同点是三种图都有顺序结构,选择结构和多分支选择,并且N-S量软件的模块独立性使用耦合性和内聚性两个定性的度量 图和PAD图还有相同的WHILE重复型、UNTIL重复型;不同点是程序标准。内聚性是信息隐蔽和局部化概念的自然扩展。一个模 流程图没有WHILE重复型、UNTIL重复型而有后判断重复型和先判断块的内聚性越强则该模块的模块独立性越强。一个模块与其 重复型。 他模块的耦合性越强则该模块的模块独立性越弱。 内聚性是度量一个模块功能强度的一个相对指标。内聚3.3软件测试 是从功能角度来衡量模块的联系,它描述的是模块内的功能 联系。内聚有如下种类,它们之间的内聚度由弱到强排列:考点5 软件测试的目的 偶然内聚、逻辑内聚、时间内聚、过程内聚、通信内聚、顺考试链接: 序内聚、功能内聚。 考点5在笔试考试中~是一个经常考查的内容~在笔试考试中出现的耦合性是模块之间互相连接的紧密程度的度量。耦合性几率为70%,主要是以选择题的形式出现~分值为2分~此考点为理解内容~取决于各个模块之间接口的复杂度、调用方式以及哪些信息读者应该理解测试是为了发现错误。 通过接口。耦合可以分为下列几种,它们之间的耦合度由高软件测试是在软件投入运行前对软件需求、设计、编码到低排列:内容耦合、公共耦合、外部耦合、控制耦合、标的最后审核。其工作量、成本占总工作量、总成本的40%以记耦合、数据耦合、非直接耦合。 上,而且具有较高的组织管理和技术难度。 在程序结构中,各模块的内聚性越强,则耦合性越弱。(1)软件测试是为了发现错误而执行程序的过程; 一般较优秀的软件设计,应尽量做到高内聚,低耦合,即减(2)一个好的测试用例是能够发现至今尚未发现的错弱模块之间的耦合性和提高模块内的内聚性,有利于提高模误的用例; 块的独立性。 (3)一个成功的测试是发现了至今尚未发现的错误的 测试。 小提示:上面仅是对耦合机制进行的一个分类。可见一个模 块与其他模块的耦合性越强则该模块独立性越弱。原则上讲,模块化考点6 软件测试的实施 设计总是希望模块之间的耦合表现为非直接耦合方式。但是,由于问考试链接: 题所固有的复杂性和结构化设计的原则,非直接耦合是不存在的。 考点6在笔试考试中出现的几率为30%,主要是以选择题的形式出现~ 分值为2分~此考点为识记内容~读者应该识记软件测试过程的4个步骤~考点4 详细设计 单元测试的两种测试方式。 考试链接: 软件测试过程分4个步骤,即单元测试、集成测试、验考点4在笔试考试中~在笔试考试中出现的几率为30%,主要是以选择收测试和系统测试。 题的形式出现~分值为2分~此考点为识记内容~读者应该识记过程设计单元测试是对软件设计的最小单位--模块(程序单元)包括哪些常用工具。 进行正确性检验测试。单元测试的技术可以采用静态分析和详细设计的任务是为软件结构图中的每个模块确定实动态测试。 现算法和局部数据结构,用某种选定的表达表示工具算法和集成测试是测试和组装软件的过程,主要目的是发现与数据结构的细节。 接口有关的错误,主要依据是概要设计说明书。集成测试所详细过程设计的常用工具有: 设计的内容包括:软件单元的接口测试、全局数据结构测试、(1)图形工具:程序流程图,N-S,PAD,HIPO。 边界条件和非法输入的测试等。集成测试时将模块组装成程(2)表格工具:判定表。 序,通常采用两种方式:非增量方式组装和增量方式组装。 (3)语言工具:PDL(伪码)。 确认测试的任务是验证软件的功能和性能,以及其他特程序流程图的5种控制结构:顺序型、选择型、先判断性是否满足了需求规格说明中确定的各种需求,包括软件配重复型、后判断重复型和多分支选择型。 置是否完全、正确。确认测试的实施首先运用黑盒测试方法,方框图中仅含5种基本的控制结构,即顺序型、选择型、对软件进行有效性测试,即验证被测软件是否满足需求规格多分支选择型、WHILE重复型和UNTIL重复型。 说明确认的标准。 8 系统测试是通过测试确认软件,作为整个基于计算机系D)软件的生产有一个明显的制作过程 统的一个元素,与计算机硬件、外设、支撑软件、数据和人解析:软件在运行期间不会因为介质的磨损而老化,只员等其他系统元素组合在一起,在实际运行(使用)环境下可能因为适应硬件环境以及需求变化进行修改而引入错误,对计算机系统进行一系列的集成测试和确认测试。 导致失效率升高从而软件退化,所以本题正确答案为B)。 系统测试的具体实施一般包括:功能测试、性能测试、 答案:B) 操作测试、配置测试、外部接口测试、安全性测试等。 【例2】以下哪项是软件生命周期的主要活动阶段, _______(考点2) 3.4软件的调试 A)需求分析 B)软件开发 C)软件确认 D)软件演进 考点7 软件调试的基本概念 解析:B)、C)、D)项都是软件工程过程的基本活动, 考试链接: 还有一个是软件规格说明。 考点7在笔试考试中~是一个经常考查的内容~在笔试考试中出现的答案:A) 几率为70%,主要是以选择题的形式出现~分值为2分~此考点为重点识记【例3】从技术观点看,软件设计包括_______。(考点3) 内容~读者应该识记软件调试的概念。 A)结构设计、数据设计、接口设计、程序设 误区警示: 计 程序经调试改错后还应进行再测试~因为经调试后有可能产生新的错B)结构设计、数据设计、接口设计、过程设误~而且测试是贯穿生命周期的整个过程。 计 在对程序进行了成功的测试之后将进入程序调试(通常C)结构设计、数据设计、文档设计、过程设称Debug,即排错)。程序的调试任务是诊断和改正程序中的计 错误。调试主要在开发阶段进行。 D)结构设计、数据设计、文档设计、程序设 程序调试活动由两部分组成,一是根据错误的迹象确定计 程序中错误的确切性质、原因和位置;二是对程序进行修改,解析:技术角度,要进行结构、接口、数据、过程的设排除这个错误。程序调试的基本步骤: 计。结构设计是定义系统各部件关系,数据设计是根据分析 (1)错误定位。从错误的外部表现形式入手,研究有模型转化数据结构,接口设计是描述如何通信,过程设计是关部分的程序,确定程序中出错位置,找出错误的内在原因; 把系统结构部件转化为软件的过程性描述。 (2)修改设计和代码,以排除错误; 答案:B) (3)进行回归测试,防止引进新的错误。 【例4】以下哪个是软件测试的目的,_______(考点5) 调试原则可以从以下两个方面考虑: A)证明程序没有错误 B)演示 (1)确定错误的性质和位置时的注意事项 程序的正确性 分析思考与错误征兆有关的信息;避开死胡同;只把调C)发现程序中的错误 D)改正试工具当作辅助手段来使用;避免用试探法,最多只能把它程序中的错误 当作最后手段。 解析:关于测试目的的基本知识,IEEE的定义是:使用 (2)修改错误原则 人工或自动手段来运行或测定某个系统的过程,其目的在于在出现错误的地方,很可能有别的错误;修改错误的一个常检验它是否满足规定的需求,或是弄清预期结果与实际结果见失误是只修改了这个错误的征兆或这个错误的表现,而没之间的差别,所以正确答案是C)。 有修改错误本身;注意修正一个错误的同时有可能会引入新答案:C) 的错误;修改错误的过程将迫使人们暂时回到程序设计阶【例5】以下哪个测试要对接口测试,_______。(考点6) 段;修改源代码程序,不要改变目标代码。 A)单元测试 B)集成测试 C)验收测试 D)系统测试 疑难解答:软件测试与软件调试有何不同, 解析:检查对测试实施各阶段的了解,集成测试时要进软件测试是尽可能多地发现软件中的错误,而软件调试的任务是 行接口测试、全局数据结构测试、边界条件测试和非法输入诊断和改正程序中的错误。软件测试贯穿整个软件生命周期,调试主 的测试等,所以正确答案是B)。 要在开发阶段。 答案:B) 3.5 例题详解 【例6】程序调试的主要任务是_______。(考点7) A)检查错误 B)改正错误 一、选择题 C)发现错误 D)以上都不【例1】对软件的特点,下面描述正确的是_______。(考 是 点1) 解析:程序的调试任务是诊断和改正程序中的错误。调A)软件是一种物理实体 试主要在开发阶段进行。 B)软件在运行使用期间不存在老化问题 答案:B) C)软件开发、运行对计算机没有依赖性,不 【例7】以下哪些不是程序调试的基本步骤,_______受计算机系统的限制 9 (考点7) 第4章 数据库设计基础 A)分析错误原因 B)错误 定位 C)修改设计代码以排除错误 D)回归经过对部分考生的调查以及对近年真题的总结分析, 测试,防止引入新错误 笔试部分经常考查的是数据库管理系统,数据库基本特点,解析:程序调试的基本步骤: 数据库系统的三级模式及二级映射,E-R模型,关系模型和(1)错误定位。从错误的外部表现形式入手,研究有关系代数,读者应对此部分进行重点学习。 关部分的程序,确定程序中出错位置,找出错误的内在原因。 详细重点学习知识点: (2)修改设计和代码,以排除错误。 1(数据的概念、数据库管理系统提供的数据语言、数(3)进行回归测试,防止引进新的错误。 据管理员的主要工作、数据库系统阶段的特点、数据的物理答案:A) 独立性及逻辑独立性、数据统一管理与控制、三级模式及两【例8】在修改错误时应遵循的原则有_______。(考点7) 级映射的概念 A)注意修改错误本身而不仅仅是错误的征兆2(数据模型3个描述内容、E-R模型的概念及其E-R图 和表现 表示法、关系操纵、关系模型三类数据约束 B)修改错误的是源代码而不是目标代码 3(关系模型的基本操作、关系代数中的扩充运算 C)遵循在程序设计过程中的各种方法和原则 4(数据库设计生命周期法的4个阶段 D)以上3个都是 解析:修改错误原则: 4.1数据库系统的基本概念 (1)在出现错误的地方,很可能有别的错误; (2)修改错误的一个常见失误是只修改了这个错误的征考点1 数据、数据库、数据库管理系统 兆或这个错误的表现,而没有修改错误本身; 考试链接: (3)注意修正一个错误的同时有可能会引入新的错误; 考点1在笔试考试中~是一个经常考查的内容~在笔试考试中出现的(4)修改错误的过程将迫使人们暂时回到程序设计阶段; 机率为70%,主要是以选择题的形式出现~分值为2分~此考点为重点识记(5)修改源代码程序,不要改变目标代码。 内容~读者还应该识记数据语言所包括的数据定义语言、数据操纵语言和答案:D) 数据控制语言。 数据是数据库中存储的基本对象,描述事物的符号记二、填空题 录。 【例1】软件设计是软件工程的重要阶段,是一个把软 数据库是长期储存在计算机内、有组织的、可共享的大件需求转换为_______的过程。(考点3) 量数据的集合,它具有统一的结构形式并存放于统一的存储解析:软件设计是软件工程的重要阶段,是一个把软件 介质内,是多种应用数据的集成,并可被各个应用程序所共需求转换为软件表示的过程。其基本目标是用比较抽象概括 享。 的方式确定目标系统如何完成预定的任务,即软件设计是确 数据库管理系统(DBMS,Database Management System)定系统的物理模型。 是数据库的机构,它是一种系统软件,负责数据库中的数据答案:软件表示 组织、数据操作、数据维护、控制及保护和数据服务等。数2】_______是指把一个待开发的软件分解成若干小【例 据库管理系统是数据系统的核心,主要有如下功能:数据模的简单的部分。(考点3) 式定义、数据存取的物理构建、数据操纵、数据的完整性、解析:模块化是指把一个待开发的软件分解成若干小的 安全性定义和检查、数据库的并发控制与故障恢复、数据的简单的部分。如高级语言中的过程、函数、子程序等。每个 服务。 模块可以完成一个特定的子功能,各个模块可以按一定的方 为完成数据库管理系统的功能,数据库管理系统提供相法组装起来成为一个整体,从而实现整个系统的功能。 应的数据语言:数据定义语言、数据操纵语言、数据控制语答案:模块化 言。 数据库管理员的主要工作如下:数据库设计、数据库维【例3】数据流图采用4种符号表示_______、数据源点 护、改善系统性能,提高系统效率。 和终点、数据流向和数据加工。(考点4) 解析:数据流图可以表达软件系统的数据存储、数据源考点2 数据库系统的发展 点和终点、数据流向和数据加工。其中,用箭头表示数据流 考试链接: 向,用圆或者椭圆表示数据加工,用双杠表示数据存储,用 考点2在笔试考试中出现的机率为30%,主要是以选择题的形式出现~方框来表示数据源点和终点。 分值为2分~此考点为识记内容~读者还应该注意各个阶段的特点。 答案:数据存储 数据管理技术的发展经历了3个阶段,见表4-1: 表4-1 各阶段特点的详细说明 10 外模式。 (3)内模式,内模式又称物理模式,它给出了数据库 物理存储结构与物理存取方法。 内模式处于最底层,它反映了数据在计算机物理结构中 的实际存储形式,概念模式处于中间层,它反映了设计者的 数据全局逻辑要求,而外模式处于最外层,它反映了用户对 数据的要求。 小提示:内模式处于最底层,它反映了数据在计算机物理结 构中的实际存储形式,概念模式处于中间层,它反映了设计者的数据 全局逻辑要求,而外模式处于最外层,它反映了用户对数据的要求。 2(数据库系统的两级映射 两级映射保证了数据库系统中数据的独立性。 (1)概念模式到内模式的映射。该映射给出了概念模 式中数据的全局逻辑结构到数据的物理存储结构间的对应 关系; 考点3 数据库系统的基本特点 (2)外模式到概念模式的映射。概念模式是一个全局 考试链接: 模式而外模式是用户的局部模式。一个概念模式中可以定义 考点3在笔试考试中出现的机率为30%,主要是以填空题的形式出现~多个外模式,而每个外模式是概念模式的一个基本视图。 分值为2分~此考点为识记内容~读者还应该理解物理独立性和逻辑独立 性的定义。 疑难解答:数据库应用系统的结构是什么样的, 数据库应用系统的7个部分以一定的逻辑层次结构方式组成一个数据独立性是数据与程序间的互不依赖性,即数据库中 有机的整体,它们的结构关系是:应用系统工、应用开发工具软件、的数据独立于应用程序而不依赖于应用程序。 数据库管理系统、操作系统、硬件。 数据的独立性一般分为物理独立性与逻辑独立性两种。 (1)物理独立性:指用户的应用程序与存储在磁盘上 4.2数据模型 的数据库中数据是相互独立的。当数据的物理结构(包括存 储结构、存取方式等)改变时,如存储设备的更换、物理存考点5 数据模型的基本概念 储的更换、存取方式改变等,应用程序都不用改变。 考试链接: (2)逻辑独立性:指用户的应用程序与数据库的逻辑 考点5在笔试考试中是一个经常考查的内容~出现的机率为70%,主要结构是相互独立的。数据的逻辑结构改变了,如修改数据模 是以填空形式出现~分值为2分~此考点为重点识记内容~读者应该识记式、增加新的数据类型、改变数据间联系等,用户程序都可 数据模型的3个部分。 以不变。 数据模型用来抽象、表示和处理现实世界中的数据和信数据统一管理与控制主要包括以下3个方面:数据的完 息。分为两个阶段:把现实世界中的客观对象抽象为概念模整性检查、数据的安全性保护和并发控制。 型;把概念模型转换为某一DBMS支持的数据模型。 考点4 数据库系统的内部结构体系 数据模型所描述的内容有3个部分,它们是数据结构、 考试链接: 数据操作与数据约束。 考点4在笔试考试中出现的机率为30%,主要是以选择题的形式出现~考点6 E-R模型 分值为2分~此考点为识记内容~读者还应该理解三级模式及两级映射的 考试链接: 定义。 考点6在笔试考试中出现的机率为30%,主要是以选择题的形式出现~误区警示: 分值为4分~此考点为理解内容~读者应该理解实体间三种函数关系~识一个数据库只有一个概念模式。一个概念模式可以有若干个外模式。 记实体、属性、联系各用什么图形来表示。 三级模式都有几种名称~读者应该熟记每个模式的另一些名称。 1(E-R模型的基本概念 1(数据统系统的3级模式 (1)实体:现实世界中的事物可以抽象成为实体,实(1)概念模式,也称逻辑模式,是对数据库系统中全 体是概念世界中的基本单位,它们是客观存在的且又能相互局数据逻辑结构的描述,是全体用户(应用)公共数据视图。 区别的事物。 一个数据库只有一个概念模式。 (2)属性:现实世界中事物均有一些特性,这些特性(2)外模式,外模式也称子模式,它是数据库用户能 可以用属性来表示。 够看见和使用的局部数据的逻辑结构和特征的描述,它是由 (3)码:唯一标识实体的属性集称为码。 概念模式推导而出来的,是数据库用户的数据视图,是与某 (4)域:属性的取值范围称为该属性的域。 一应用有关的数据的逻辑表示。一个概念模式可以有若干个 (5)联系:在现实世界中事物间的关联称为联系。 11 两个实体集间的联系实际上是实体集间的函数关系,这束、参照完整性约束以及用户定义的完整性约束。 种函数关系可以有下面几种:一对一的联系、一对多或多对 小提示:关系模式采用二维表来表示,一个关系对应一张二维表。一联系、多对多。 可以这么说,一个关系就是一个二维表,但是一个二维表不一定是一2(E-R模型的图示法 个关系。 E-R模型用E-R图来表示。 疑难解答:E-R图是如何向关系模式转换的, (1)实体表示法:在E-R图中用矩形表示实体集,在矩从E-R图到关系模式的转换是比较直接的,实体与联系都可以表形内写上该实体集的名字。 示成关系,E-R图中属性也可以转换成关系的属性。实体集也可以转换(2)属性表示法:在E-R图中用椭圆形表示属性,在椭成关系。 圆形内写上该属性的名称。 (3)联系表示法:在E-R图中用菱形表示联系,菱形内 4.3关系代数 写上联系名。 考点7 层次模型 考点9 关系代数 考试链接: 考试链接: 考点7在笔试考试中出现的机率为30%,主要是以选择题的形式出现~考点9在笔试考试中出现的机率为30%,主要是以选择题的形式出现~分值为2分~此考点为识记内容~读者应该理解层次模型的定义。它的基分值为2分~此考点重点掌握理解内容~读者应该理解关系模型的基本操本结构是树形结构。 作以及关系代数的几种运算。 满足下面两个条件的基本层次联系的集合为层次模型。 误区警示: (1)有且只有一个结点没有双亲结点,这个结点称为当对关系模型进行查询运算~涉及到多种运算时~应当注意它们根结点; 之间的先后顺序~因为有可能进行投影运算时~把符合条件的记录过 (2)除根结点以外的其他结点有且仅有一个双亲结点。 滤~产生错误的结果。 1(关系模型的基本操作 考点8 关系模型 关系模型的基本操作:插入、删除、修改和查询。 考试链接: 其中查询包含如下运算: 考点8笔试考试中~是一个经常考查的内容~在笔试考试中出现的机?投影运算。从R中选择出若干属性列组成新的关系。 率为70%,主要是以选择题的形式出现~分值为2分~此考点重点掌握为理?选择运算。选择运算是一个一元运算,关系R通过选解内容~读者应该理解二维表的7个性质~识记三类数据约束。 择运算(并由该运算给出所选择的逻辑条件)后仍为一个关误区警示: 系。设关系的逻辑条件为F,则R满足F的选择运算可写成:当对关系模型进行查询运算~涉及到多种运算时~应当注意它们σF(R) 之间的先后顺序~因为有可能进行投影运算时~把符合条件的记录过?笛卡尔积运算。设有n元关系R及m元关系S,它们分滤~产生错误的结果。 别有p、q个元组,则关系R与S经笛卡尔积记为R×S,该关系个关系模型采用二维表来表示,二维表一般满足下面7是一个n+m元关系,元组个数是p×q,由R与S的有序组组合性质: 而成。 (1)二维表中元组个数是有限的--元组个数有限性; (2)二维表中元组均不相同--元组的唯一性; 小提示:当关系模式进行笛卡尔积运算时,读者应该注意运(3)二维表中元组的次序可以任意交换--元组的次序算后的结果是n+m元关系,元组个数是p×q,这是经常混淆的。 无关性; 2(关系代数中的扩充运算 (4)二维表中元组的分量是不可分割的基本数据项--(1)交运算:关系R与S经交运算后所得到的关系是由元组分量的原子性; 那些既在R内又在S内的有序组所组成,记为R?S。 (5)二维表中属性名各不相同--属性名唯一性; (2)除运算 (6)二维表中属性与次序无关,可任意交换--属性的如果将笛卡尔积运算看作乘运算的话,除运算就是它的次序无关性; 逆运算。当关系T=R×S时,则可将除运算写成:T?R=S或(7)二维表属性的分量具有与该属性相同的值域--分T/R=S 量值域的统一性。 S称为T除以R的商。除法运算不是基本运算,它可以由在二维表中惟一标识元组的最小属性值称为该表的键基本运算推导而出。 或码。二维表中可能有若干个健,它们称为表的侯选码或侯(3)连接与自然连接运算 选健。从二维表的所有侯选键选取一个作为用户使用的键称连接运算又可称为θ运算,这是一种二元运算,通过它为主键或主码。表A中的某属性集是某表B的键,则称该属性可以将两个关系合并成一个大关系。设有关系R、S以及比较值为A的外键或外码。 式iθj,其中i为R中的域,j为S中的域,θ含义同前。则可以关系操纵:数据查询、数据删除、数据插入、数据修改。 将R、S在域i,j上的θ连接记为: 关系模型允许定义三类数据约束,它们是实体完整性约R |×| S 12 iθj 解析:数据库管理员(简称DBA),具有如下的职能: 在θ连接中如果θ为"=",就称此连接为等值连接,否设计、定义数据库系统;帮助用户使用数据库系统;监督与则称为不等值连接;如θ为"<"时称为小于连接;如θ为">"控制数据库系统的使用和运行;改进和重组数据库系统;转时称为大于连接。 储和恢复数据库;重构数据库。所以,定义数据库内容,决 自然连接(natural join)是一种特殊的等值连接,它满定存储结构和存取策略及安全授权等是数据库管理员足下面的条件: (DBA)的职责。 ?两关系间有公共域; 答案:C) ?通过公共域的等值进行连接。 【例2】在数据库管理技术的发展过程中,经历了人工 设有关系R、S,R有域A,A,…,An,S有域B,B,…,管理阶段、文件系统阶段和数据库系统阶段。在这几个阶段1212 Bm,并且,A,A,…,Aij,与B,B,…,Bj分别为相中,数据独立性最高的是_______。(考点2) i1i212 同域,此时它们自然连接可记为: A)数据库系统 B)文件系统 R|×|S C)人工管理 D)数据项管 自然连接的含义可用下式表示: 理 R|×|S=π(σ (R解析:在人工管理阶段,数据无法共享,冗余度大,不,,……………A1A2An,Bj+1,BmAi1=B1^Ai2=B2^^Aij=,Bj ×S)) 独立,完全依赖于程序。在文件系统阶段,数据共享性差, 冗余度大,独立性也较差。所以B)选项和C)选项均是错误 疑难解答:连接与自然连接的不同之处在什么, 的。 一般的连接操作是从行的角度进行运算,但自然连接还需要取消答案:A) 重复列,所以是同时从行和列的角度进行运算。 【例3】在数据库系统中,当总体逻辑结构改变时,通 过改变_______,使局部逻辑结构不变,从而使建立在局部4.4数据库设计与管理 逻辑结构之上的应用程序也保持不变,称之为数据和程序的 逻辑独立性。(考点3) 考点10 数据库设计概述 A)应用程序 B)逻辑结构和物考试链接: 理结构之间的映射 考点10在笔试考试中出现的机率为30%,主要是以选择题的形式出现~C)存储结构 D)局部逻辑结构分值为2分~此考点为识记内容~读者还应识记数据库设计的前4个阶段以到总体逻辑结构的映射 及它们相应的任务。 解析:模式描述的是数据的全局逻辑结构,外模式描述 数据库设计中有两种方法,面向数据的方法和面向过程的是数据的局部逻辑结构。当模式改变时,由数据库管理员的方法: 对外模式/模式映射做相应改变,可以使外模式保持不变。应 面向数据的方法是以信息需求为主,兼顾处理需求;面用程序是依据数据的外模式编写的,从而应用程序也不必改向过程的方法是以处理需求为主,兼顾信息需求。由于数据变。保证了数据与程序的逻辑独立性,即数据的逻辑独立性。 在系统中稳定性高,数据已成为系统的核心,因此面向数据答案:D) 的设计方法已成为主流。 【例4】数据库系统依靠_______支持数据的独立性。(考 数据库设计目前一般采用生命周期法,即将整个数据库点4) 应用系统的开发分解成目标独立的若干阶段。它们是:需求A)具有封装机制 分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、B)定义完整性约束条件 编码阶段、测试阶段、运行阶段和进一步修改阶段。在数据C)模式分级,各级模式之间的映射 库设计中采用前4个阶段。 D)DDL语言和DML语言互相独立 解析:。数据库的三级模式结构指数据库系统由外模式、 疑难解答:数据库设计的前4个阶段的成果分别是什么, 模式和内模式3级构成。数据库管理系统在这3级模式之间提数据库设计中一般采用前4个阶段,它们的成果分别是需求说明供了两层映射:外模式/模式映射,模式/内模式映射。这两书、概念数据模型、逻辑数据模型和数据库内模式。 层映射保证了数据库系统中的数据能够具有较高的逻辑独 立性和物理独立性。 4.4 例题详解 答案:C) 一、选择题 【例5】将E-R图转换到关系模式时,实体与联系都可以【例1】对于数据库系统,负责定义数据库内容,决定表示成_______。(考点6) 存储结构和存取策略及安全授权等工作的是_______。(考点A) 属性 B) 关系 1) C) 键 D) 域 A)应用程序员 B)用户 解析:E-R图由实体、实体的属性和实体之间的联系3个C)数据库管理员 D)数据库管要素组成,关系模型的逻辑结构是一组关系模式的集合,将理系统的软件设计员 E-R图转换为关系模型:将实体、实体的属性和实体之间的 13 联系转化为关系模式。 【例9】下述_______不属于数据库设计的内容。(考点 答案:B) 10) 【例6】用树形结构来表示实体之间联系的模型称为A) 数据库管理系统 B) 数据_______。(考点7) 库概念结构 A)关系模型 B)层次模型 C) 数据库逻辑结构 D) 数据 C)网状模型 D)数据模型 库物理结构 解析:满足下面两个条件的基本层次联系的集合为层次解析:数据库设计是确定系统所需要的数据库结构。数模型: 据库设计包括概念设计、逻辑设计和建立数据库(又称物理 (1)有且只有一个结点没有双亲结点,这个结点称为设计)。 根结点; 答案:A) (2)根以外的其它结点有且仅有一个双亲结点。 二、填空题 层次模型的特点: 【例1】一个数据库的数据模型至少应该包括以下3个组 (1)结点的双亲是惟一的; 成部分,_______、数据操作和数据的完整性约束条件。(考 (2)只能直接处理一对多的实体联系; 点5) (3)每个记录类型定义一个排序字段,也称为码字段; 解析:数据模型是严格定义的一组概念的集合。这些概 (4)任何记录值只有按其路径查看时,才能显出它的念精确地描述了系统的静态特性、动态特性和完整性约束条全部意义; 件。因此,数据模型通常由数据结构、数据操作和完整性约 (5)没有一个子女记录值能够脱离双亲记录值而独立束3部分组成。其中,数据结构是对系统静态特性的描述,存在。 数据操作是对系统动态特性的描述,数据的完整性约束用以 答案:B) 限定符合数据模型的数据库状态以及状态的变化,以保证数 【例7】对数据库中的数据可以进行查询、插入、删除、据的正确性、有效性和相容性。 修改(更新),这是因为数据库管理系统提供了_______。(考答案:数据结构 点8) 【例2】在关系数据模型中,二维表的列称为属性,二 A) 数据定义功能 B) 数据维表的行称为_____。(考点8) 操纵功能 解析:一个关系是一张二维表。表中的行称为元组,一 C) 数据维护功能 D) 数据行对应一个元组,一个元组对应存储在文件中的一个记录 控制功能 值。 解析:数据库管理系统包括如下功能: 答案:元组 (1)数据定义功能:DBMS提供数据定义语言(DDL), 用户可以通过它方便地对数据库中的数据对象进行定义; (2)数据操纵功能:DBMS还提供数据操作语言 (DML),用户可以通过它操纵数据,实现对数据库的基本 操作,如查询、插入、删除和修改; (3)数据库的运行管理:数据库在建立、运用和维护 时由数据库管理系统统一管理,统一控制以保证数据的安全 性、完整性、多用户对数据的并发使用及发生故障后的系统 恢复; (4)数据库的建立和维护功能:它包括数据库初始数 据的输入、转换功能,数据库的转储、恢复功能,数据库的 重组、功能和性能监视等等。 答案:B) 【例8】设关系R和关系S的属性元数分别是3和4,关系T 是R与S的笛卡儿积,即T=R×S,则关系T的属性元数是 _______(考点9) A) 7 B) 9 C) 12 D) 16 解析:笛卡儿积的定义是设关系R和S的元数分别是r和s, R和S的笛卡儿积是一个(r+s)元属性的集合,每一个元组 的前r个分量来自R的一个元组,后s个分量来自s的一个元组。 所以关系T的属性元数是3+4,7。 答案:A) 14 (11) 算法的时间复杂度是指(C) A. 执行算法程序所需要的时间 B. 算法程序的长度 C. 算法执行过一、选择题 程中所需要的基本运算次数 D. 算法程序中的指令条数 (1) 下面叙述正确的是(C) (12) 算法的空间复杂度是指(D) A. 算法的执行效率与数据的存储结构无关 B. 算法的空间复杂度是 指算法程序中指令(或语句)的条数 C. 算法的有穷性是指算法必须A. 算法程序的长度 B. 算法程序中的指令条数 C. 算法程序所占的能在执行有限个步骤之后终止 D. 以上三种描述都不对 存储空间 D. 算法执行过程中所需要的存储空间 (13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点(2) 以下数据结构中不属于线性数据结构的是(C) 数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可A. 队列 B. 线性表 C. 二叉树 D. 栈 求出 (3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得 A. 349 B. 350 C. 255 D. 351A. 8 B. 16 C. 32 D. 15 (14) 结构化程序设计主要强调的是(B) (4) 下面描述中,符合结构化程序设计风格的是(A) A.程序的规模 B.程序的易读性 A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制C.程序的执行效率 D.程序的可移植性 逻辑 B. 模块只有一个入口,可以有多个出口 C. 注重提高程序的执 (15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具行效率 D. 不使用goto语句 备哪些功能的阶段是(D) 注:即第一个阶段 (5) 下面概念中,不属于面向对象方法的是 (D) 注:P55-58 A. 概要设计 B. 详细设计 C. 可行性分析 D. 需求分析 A. 对象 B. 继承 C. 类 D. 过程调用 (16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发定的图符构成。下列图符名标识的图符不属于数据流图合法图符的是阶段是(B) (A) 注:P67 A. 可行性分析 B. 需求分析 C. 详细设计 D. 程序编码 A. 控制流 B. 加工 C. 数据存储 D. 源和潭 (7) 在软件开发中,下面任务不属于设计阶段的是(D) (17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求 分析、编写需求规格说明书以及(B) 注:P66 A. 数据结构设计 B. 给出系统模块结构 A. 阶段性报告 B. 需求评审 C. 总结 D. 都不正确 C. 定义模块算法 D. 定义需求并建立系统模型 (18) 下述关于数据库系统的叙述中正确的是(A) (8) 数据库系统的核心是(B) A. 数据库系统减少了数据冗余 B. 数据库系统避免了一切冗余 A. 数据模型 B. 数据库管理系统 C. 软件工具 D. 数据库 C. 数据库系统中数据的一致性是指数据类型的一致 D. 数据库系统(9) 下列叙述中正确的是(C) 比文件系统能管理更多的数据 A.数据库是一个独立的系统,不需要操作系统的支持 B.数据库设计是(19) 关系表中的每一横行称为一个(A) 指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的 问题 D.数据库系统中,数据的物理结构必须与逻辑结构一致 A. 元组 B. 字段 C. 属性 D. 码 (10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(20) 数据库设计包括两个方面的设计内容,它们是(A) (A) 注:P108 A. 概念设计和逻辑设计 B. 模式设计和内模式设计 A. 内模式 B. 外模式 C. 概念模式 D. 逻辑模式 15 C. 内模式设计和物理设计 D. 结构特性设计和行为特性设计 (31) 算法一般都可以用哪几种控制结构组合而成(D) 注:P3 (21) 下列叙述中正确的是(A) A. 循环、分支、递归 B. 顺序、循环、嵌套A. 线性表是线性结构 B. 栈与队列是非线性结构 C. 循环、递归、选择 D. 顺序、选择、循环 C. 线性链表是非线性结构 D. 二叉树是线性结构 (32) 数据的存储结构是指(B) 注:P13,要牢记 (22) 下列关于栈的叙述中正确的是(D) A. 数据所占的存储空间量 B. 数据的逻辑结构在计算机中的表示 A. 在栈中只能插入数据 B. 在栈中只能删除数据 C. 数据在计算机中的顺序存储方式 D. 存储在外存中的数据 C. 栈是先进先出的线性表 D. 栈是先进后出的线性表 (33) 设有下列二叉树:图见书P46 (23) 下列关于队列的叙述中正确的是(C) 对此二叉树中序遍历的结果为(B) A. 在队列中只能插入数据 B. 在队列中只能删除数据 A. ABCDEF B. DBEAFC C. ABDECF D. DEBFCA (34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通C. 队列是先进先出的线性表 D. 队列是先进后出的线性表 过发送(D) 注:P56 (24) 对建立良好的程序设计风格,下面描述正确的是(A) 注:P48 A. 调用语句 B. 命令 C. 口令 D. 消息 A. 程序应简单、清晰、可读性好 B. 符号名的命名要符合语法 (35) 检查软件产品是否符合需求定义的过程称为(A) 注:P95 C. 充分考虑程序的执行效率 D. 程序的注释可有可无 A. 确认测试 B. 集成测试 C. 验证测试 D. 验收测试 (25) 下面对对象概念描述错误的是(A) 注:P55 (36) 下列工具中属于需求分析常用工具的是(D) 注:P67 A. 任何对象都必须有继承性 B. 对象是属性和方法的封装体 A. PAD B. PFD C. N-S D. DFD C. 对象间的通讯靠消息传递 D. 操作是对象的动态性属性 (37) 下面不属于软件设计原则的是(C) 注:P73 (26) 下面不属于软件工程的3个要素的是(D) 注:P62 A. 抽象 B. 模块化 C. 自底向上 D. 信息隐蔽 A. 工具 B. 过程 C. 方法 D. 环境 (38) 索引属于(B) (27) 程序流程图(PFD)中的箭头代表的是(B) 注:P81 A. 模式 B. 内模式 C. 外模式 D. 概念模式 A. 数据流 B. 控制流 C. 调用关系 D. 组成关系 (39) 在关系数据库中,用来表示实体之间联系的是(D) (28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统 阶段和数据库系统阶段。其中数据独立性最高的阶段是(A) A. 树结构 B. 网结构 C. 线性表 D. 二维表 A. 数据库系统 B. 文件系统 C. 人工管理 D. 数据项管理 (40) 将E-R图转换到关系模式时,实体与联系都可以表示成(B) (29) 用树形结构来表示实体之间联系的模型称为(B) A. 属性 B. 关系 C. 键 D. 域 A. 关系模型 B. 层次模型 C. 网状模型 D. 数据模型(41) 在下列选项中,哪个不是一个算法一般应该具有的基本特征(C) (30) 关系数据库管理系统能实现的专门关系运算包括(B) A. 确定性 B. 可行性 C. 无穷性 D. 拥有足够的情报 A. 排序、索引、统计 B. 选择、投影、连接 (42) 希尔排序法属于哪一种类型的排序法(B) C. 关联、更新、排序 D. 显示、打印、制表 A.交换类排序法 B.插入类排序法 C.选择类排序法 D.建堆排序法 16 (43) 在深度为5的满二叉树中,叶子结点的个数为(C) A. cedba B. acbed C. decab D. deabc (54) 在下列几种排序方法中,要求内存量最大的是(D) 注:要牢记,A. 32 B. 31 C. 16 D. 15 书中没有提到。 (44) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较 次数为(B) 注:要牢记 A. 插入排序 B. 选择排序 C. 快速排序 D. 归并排序 A. N+1 B. N C. (N+1)/2 D. N/2 (55) 在设计程序时,应采纳的原则之一是(A) 注:和设计风格有关 (45) 信息隐蔽的概念与下述哪一种概念直接相关(B) 注:P74 A. 程序结构应有助于读者理解 B. 不限制goto语句的使用 A.软件结构定义 B. 模块独立性 C. 模块类型划分 D. 模拟耦合度 C. 减少或取消注解行 D. 程序越短越好 (46) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它(56) 下列不属于软件调试技术的是(B) 注:P98 的基本原理是(C) A. 强行排错法 B. 集成测试法 C. 回溯法 D. 原因排除法 A. 模拟现实世界中不同事物之间的联系 B. 强调模拟现实世界中的 (57)下列叙述中,不属于软件需求规格说明书的作用的是(D)注:P71 算法而不强调概念 C. 使用现实世界的概念抽象地思考问题从而自然 地解决问题 D. 鼓励开发者在软件开发的绝大部分中都用实际领域的 A. 便于用户、开发人员进行理解和交流 B. 反映出用户问题的结构,概念去思考 可以作为软件开发工作的基础和依据 C. 作为确认测试和验收的依据 D. 便于开发人员进行需求分析 (47) 在结构化方法中,软件功能分解属于下列软件开发中的阶段是 (C) 注:总体设计也就是概要设计 (58) 在数据流图(DFD)中,带有名字的箭头表示(C) A. 详细设计 B. 需求分析 C. 总体设计 D. 编程调试 A. 控制程序的执行顺序 B. 模块之间的调用关系 C. 数据的流向 D. 程序的组成成分 (48) 软件调试的目的是(B) 注:与软件测试要对比着复习 (59) SQL语言又称为(C) A.发现错误 B.改正错误 C.改善软件的性能 D.挖掘软件的潜能 A. 结构化定义语言 B. 结构化控制语言 (49) 按条件f对关系R进行选择,其关系代数表达式为(C) C. 结构化查询语言 D. 结构化操纵语言 A. R|X|R B. R|X|Rf C. бf(R) D. ?f(R) (60) 视图设计一般有3种设计次序,下列不属于视图设计的是(B) (50) 数据库概念设计的过程中,视图设计一般有三种设计次序,以下 各项中不对的是(D) 注:P127,要牢记 A. 自顶向下 B. 由外向内 C. 由内向外 D. 自底向上 A. 自顶向下 B. 由底向上 C. 由内向外 D. 由整体到局部 (61) 数据结构中,与所使用的计算机无关的是数据的(C) (51) 在计算机中,算法是指(C) A. 存储结构 B. 物理结构 C. 逻辑结构 D. 物理和存储结构 A. 查询方法 B. 加工方法 (62) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前, 栈中元素可以出栈,则出栈序列可能是(D) C. 解题方案的准确而完整的描述 D. 排序方法 A. ABCED B. DBCEA C. CDABE D. DCBEA (52) 栈和队列的共同点是(C) 注:这一共同点和线性表不一样 (63) 线性表的顺序存储结构和线性表的链式存储结构分别是(B) A. 都是先进后出 B. 都是先进先出 C. 只允许在端点处插入和删除 元素 D. 没有共同点 A. 顺序存取的存储结构、顺序存取的存储结构 B. 随机存取的存储结 构、顺序存取的存储结构 C. 随机存取的存储结构、随机存取的存储(53) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它 结构 D. 任意存取的存储结构、任意存取的存储结构 的前序遍历序列是(A) 注:P38,前提要掌握三种遍历的方法 17 A. 便于插入和删除操作 B. 数据元素的物理顺序与逻辑顺序相同 C. (64) 在单链表中,增加头结点的目的是(A) 花费的存储空间较顺序存储少 D. 便于随机存取 A. 方便运算的实现 B. 使单链表至少有一个结点 C. 标识表结点中 首结点的位置 D. 说明单链表是线性表的链式存储实现 (75) 下列不属于结构化分析的常用工具的是(D) 注:P67 (65) 软件设计包括软件的结构、数据接口和过程设计,其中软件的过A. 数据流图 B. 数据字典 C. 判定树 D. PAD图 程设计是指(B) 注:P73 (76) 软件开发的结构化生命周期方法将软件生命周期划分成(A)A. 模块间的关系 B. 系统结构部件转换成软件的过程描述 C. 软件 A. 定义、开发、运行维护 B. 设计阶段、编程阶段、测试阶段 C. 总层次结构 D. 软件开发过程 体设计、详细设计、编程调试 D. 需求分析、功能定义、系统设计 (66) 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来 (77) 在软件工程中,白箱测试法可用于测试程序的内部结构。此方法代替传统的程序流程图,通常也把这种图称为(B) 注:P82 将程序看做是(C) 注:P87 A. PAD图 B. N-S图 C. 结构图 D. 数据流图 A. 循环的集合 B. 地址的集合 C. 路径的集合 D. 目标的集合 (67) 数据处理的最小单位是(C) 注:数据项不可再分割 (78) 在数据管理技术发展过程中,文件系统与数据库系统的主要区别A. 数据 B. 数据元素 C. 数据项 D. 数据结构 是数据库系统具有(D) 注:数据模型采用关系模型(二维表) (68) 下列有关数据库的描述,正确的是(C) 注:P102 A. 数据无冗余 B. 数据可共享 A. 数据库是一个DBF文件 B. 数据库是一个关系 C. 数据库是一个结C. 专门的数据管理软件 D. 特定的数据模型 构化的数据集合 D. 数据库是一组文件 (79) 分布式数据库系统不具有的特点是(B) (69) 单个用户使用的数据视图的描述称为(A) 注:P108 A. 分布式 B. 数据冗余 A. 外模式 B. 概念模式 C. 内模式 D. 存储模式 C. 数据分布性和逻辑整体性 D. 位置透明性和复制透明性 (70) 需求分析阶段的任务是确定(D) (80) 下列说法中,不属于数据模型所描述的内容的是(C) 注:P110 A. 软件开发方法 B. 软件开发工具 C. 软件开发费用 D. 软件系统 A. 数据结构 B. 数据操作 C. 数据查询 D. 数据约束 功能 (81)根据数据结构中各数据元素之间前后件关系的复杂程度,一般将(71) 算法分析的目的是(D) 注:书中没有总结,但要牢记 数据结构分成(C) A. 找出数据结构的合理性 B. 找出算法中输入和输出之间的关系 C. A.动态结构和静态结构 B.紧凑结构和非紧凑结构 分析算法的易懂性和可靠性 D. 分析算法的效率以求改进 C.线性结构和非线性结构 D.内部结构和外部结构 (72)链表不具有的特点是(B) (82)下列叙述中,错误的是(B) A.不必事先估计存储空间 B.可随机访问任一元素 A.数据的存储结构与数据处理的效率密切相关 B.数据的存储结构与C.插入删除不需要移动元素 D.所需空间与线性表长度成正比 数据处理的效率无关 C.数据的存储结构在计算机中所占的空间不一(73) 已知数据表A中每个元素距其最终位置不远,为节省时间,应采定是连续的 D.一种数据的逻辑结构可以有多种存储结构 用的算法是(B) (83)线性表L=(a1,a2,a3,…ai,…an),下列说法正确的是(D) A. 堆排序 B. 直接插入排序 C. 快速排序 D. 直接选择排序 A.每个元素都有一个直接前件和直接后件 B.线性表中至少要有一个(74) 用链表表示线性表的优点是(A) 注:因为不需要移动元素 元素 C.表中诸元素的排列顺序必须是由小到大或由大到 18 D.除第一个元素和最后一个元素外,其余每个元素都有一个且只有一(2) 数据的逻辑结构在计算机存储空间中的存放形式称为数据的个直接前件和直接后件 ______。答:存储结构#物理结构 (84)线性表若采用链式存储结构时,要求内存中可用存储单元的地址(3) 若按功能划分,软件测试的方法通常分为白盒测试方法和______(D) 测试方法。答:黑盒 (4) 如果一个工人可管理多个设施,而一个设施只被一个工人管理,A.必须是连续的 B.部分地址必须是连续的 则实体"工人"与实体"设备"之间存在______联系。 C.一定是不连续的 D.连续不连续都可以 答:一对多#1:N#1:n (85)栈通常采用的两种存储结构是(A) (5) 关系数据库管理系统能实现的专门关系运算包括选择、连接和A.顺序存储结构和链式存储结构 B.散列方式和索引方式 ______。 答:投影 C.链表存储结构和数组 D.线性存储结构和非线性存储结构 (6) 在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可 以分为三种:前序遍历、______遍历和后序遍历。答:中序 (86)下列数据结构中,按先进后出原则组织数据的是(B) (7) 结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、A.线性链表 B.栈 C.循环链表 D.顺序表 ______和限制使用goto语句。 答:模块化 (87)树是结点的集合,它的根结点数目是(C) (8) 软件的调试方法主要有:强行排错法、______和原因排除法。答: 回溯法 A.有且只有1 B.1或多于1 C.0或1 D.至少2 (9) 数据库系统的三级模式分别为______模式、内部级模式与外部级(88)具有3个结点的二叉树有(D) 模式。答:概念#概念级 A.2种形态 B.4种形态 C.7种形态 D. 5种形态 (10) 数据字典是各类数据描述的集合,它通常包括5个部分,即数据 项、数据结构、数据流、______和处理过程。答:数据存储 (89)设一棵二叉树中有3个叶子结点,有8个度为1的结点,则该二 叉树中总的结点数为(B) (11) 设一棵完全二叉树共有500个结点,则在该二叉树中有______个 叶子结点。答:250 A. 12 B. 13 C.14 D. 15 (12) 在最坏情况下,冒泡排序的时间复杂度为______。 答:(90)在结构化程序设计思想提出之前,在程序设计中曾强调程序的效n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2) 率,现在,与程序的效率相比,人们更重视程序的(C) (13) 面向对象的程序设计方法中涉及的对象是系统中用来描述客观A.安全性 B.一致性 C.可理解性 D.合理性 事物的一个______。答:实体 (91)为了提高测试的效率,应该 (D) 注:P85 (14) 软件的需求分析阶段的工作,可以概括为四个方面:______、需 求分析、编写需求规格说明书和需求评审。 答:需求获取 A.随机选取测试数据B.取一切可能的输入数据作为测试数据C.在完成 编码以后制定软件的测试计划 D.集中对付那些错误群集的程序 (15) ______是数据库应用的核心。 答:数据库设计 (92)软件生命周期中所花费用最多的阶段是(D) (16) 数据结构包括数据的______结构和数据的存储结构。 A.详细设计 B.软件编码 C.软件测试 D.软件维护 答:逻辑 (17) 软件工程研究的内容主要包括:______技术和软件工程管理。答: 软件开发 注:P64 二、填空题 (18) 与结构化需求分析方法相对应的是______方法。 (1) 算法的复杂度主要包括______复杂度和空间复杂度。 答:时间 答:结构化设计 19 (19) 关系模型的完整性规则是对关系的某种约束条件,包括实体完整(36) 测试的目的是暴露错误,评价程序的可靠性;而______的目的是性、______和自定义完整性。答:参照完整性 发现错误的位置并改正错误。答:调试 (20) 数据模型按不同的应用层次分为三种类型,它们是______数据模 (37) 在最坏情况下,堆排序需要比较的次数为______。型、逻辑数据模型和物理数据模型。答:概念 注:P110 答:O(nlog2n) (21) 栈的基本运算有三种:入栈、退栈和______。 (38) 若串s="Program",则其子串的数目是______。答:29 答:读栈顶元素#读栈顶的元素#读出栈顶元素 (39) 一个项目具有一个项目主管,一个项目主管可管理多个项目,则(22) 在面向对象方法中,信息隐蔽是通过对象的______性来实现的。实体"项目主管"与实体"项目"的联系属于______的联系。 答:封装 答:1对多#1:N (23) 数据流的类型有______和事务型。 答:变换型 注:P77 (40) 数据库管理系统常见的数据模型有层次模型、网状模型和______(24) 数据库系统中实现各种数据管理功能的核心软件称为______。三种。答:关系模型 答:数据库管理系统#DBMS 注:要牢记,重要 (41)数据的逻辑结构有线性结构和_______两大类。 答非线性结构 (25) 关系模型的数据操纵即是建立在关系上的数据操纵,一般有 (42)数据结构分为逻辑结构与存储结构,线性链表属于_______。答:______、增加、删除和修改四种操作。答:查询 注:要牢记 存储结构 (26) 实现算法所需的存储单元多少和算法的工作量大小分别称为算 (43)数据的基本单位是_______。答:元素 法的 ______。 答:空间复杂度和时间复杂度 (44)长度为n的顺序存储线性表中,当在任何位置上插入一个元素概(27) 数据结构包括数据的逻辑结构、数据的 ______以及对数据的操 率都相等时,插入一个元素所需移动元素的平均个数为______。 作运算。答:存储结构 注:P7 答:n/2 (28) 一个类可以从直接或间接的祖先中继承所有属性和方法。采用这 个方法提高了软件的______。答:可重用性 (45)当循环队列非空且队尾指针等于队头指针时,说明循环队列已满, 不能进行入队运算。这种情况称为______。 答:上溢 (29) 面向对象的模型中,最基本的概念是对象和 ______。 答:类 (46)在面向对象方法中,类之间共享属性和操作的机制称为_______。(30) 软件维护活动包括以下几类:改正性维护、适应性维护、______ 答:继承 维护和预防性维护。答:完善性 注:要牢记,书中没有提到 (31) 算法的基本特征是可行性、确定性、______和拥有足够的情报。 答:有穷性 (32) 顺序存储方法是把逻辑上相邻的结点存储在物理位置______的 存储单元中。答:相邻 (33) Jackson结构化程序设计方法是英国的M.Jackson提出的,它是 一种面向______的设计方法。答:数据结构 注:P67 (34) 数据库设计分为以下6个设计阶段:需求分析阶段、______、逻 辑设计阶段、物理设计阶段、实施阶段、运行和维护阶段。 答:概念设计阶段#数据库概念设计阶段 (35) 数据库保护分为:安全性控制 、______、并发性控制和数据的 恢复。答:完整性控制 注:要牢记 20
本文档为【vf二级考试复习资料】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_594886
暂无简介~
格式:doc
大小:130KB
软件:Word
页数:0
分类:高中语文
上传时间:2018-11-08
浏览量:2