二级考试公共基本知识.ppt

上传人:cn****1 文档编号:571813530 上传时间:2024-08-12 格式:PPT 页数:182 大小:4.34MB
返回 下载 相关 举报
二级考试公共基本知识.ppt_第1页
第1页 / 共182页
二级考试公共基本知识.ppt_第2页
第2页 / 共182页
二级考试公共基本知识.ppt_第3页
第3页 / 共182页
二级考试公共基本知识.ppt_第4页
第4页 / 共182页
二级考试公共基本知识.ppt_第5页
第5页 / 共182页
点击查看更多>>
资源描述

《二级考试公共基本知识.ppt》由会员分享,可在线阅读,更多相关《二级考试公共基本知识.ppt(182页珍藏版)》请在金锄头文库上搜索。

1、全国计算机二级考试形式全国计算机二级考试形式 笔试 90分钟,满分100分,其中含公共基础知识部分的30分。 上机操作 90分钟,满分100分。上机操作包括: 基本操作 简单应用 综合应用全国计算机等级考试二级教程公共基础知识部分要 点第 一 章数据结构与算法【本章考试要点本章考试要点】 算法的基本概念;算法复杂度的概念和意义(时间复杂度和空间复杂度)。 数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构。 线性表的定义;线性表的顺序存储结构及其插入与删除。 栈和队列的定义;栈和队列的顺序存储结构有其基本运算。 线性单链表、双向链表与循环链表的结构及其基本运算。

2、 树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。 顺序查找与二分法查找算法;基本排序算法(交换类排序、选择类排序、插入类排序)。一、算法一、算法 算法是指解题方案的准确而完整的描述。1、算法的基本特征、算法的基本特征可行性 算法的每一条指令都必须是基本的,可执行的。确定性 算法的每一个步骤都必须是有明确定义的,不允许有模棱两可的解释,也不允许有多义性。有穷性 算法必须在有限的时间内完成,即算法必须能在执行有限个步骤之后终止。拥有足够的情报 不同的输入将会有不同的结果。当算法拥有足够的情报时,算法才有效。P1 算法是一组严谨地定义运算顺序的规则,并且每一个规则都是有效的,

3、且是明确的,此顺序将在有限的次数下终止。P22、算法的基本要素、算法的基本要素数据对象的运算和操作 基本运算和操作包括以下四类: 算术运算 逻辑运算 关系运算 数据传输算法的控制结构 算法中各操作之间的执行顺序称为算法的控制结构。 一个算法通常由顺序、选择、循环三种基本控制结构组合而成。P23、算法设计基本方法、算法设计基本方法 列举法 归纳法 递推 递归 减半递推技术 回溯法P34、算法复杂度、算法复杂度 算法的时间复杂度 指执行算法所需要的计算工作量(用基本运算的次数来度量)。 算法的空间复杂度 指执行算法所需要的内存空间。P5、P7二、数据结构的基本概念二、数据结构的基本概念1、数据结构

4、的定义、数据结构的定义 数据结构是指相互有关联的数据元素的集合。 在数据处理领域里,每一个需要处理的对象都可以抽象数据元素(元素)。 在具有相同特征的数据元素集合中,各个数据之间存在有某种关系(即联系),这种关系反映了该集合中的数据元素所固有的一种结构。通常把数据元素之间这种固有的关系简单地用前前后后件件关系关系(或直接前驱与直接后继)来描述。P10、P11 数据结构是指反映数据元素之间关系的数据元素集合的表示。或者说,数据结构是指带有结构的数据元素的集合。所谓结构实际上就是指指数数据据元素之间的前后件关系元素之间的前后件关系。(1)数据的逻辑结构 一个数据结构应包含两个方面的信息: 表示数据

5、元素的信息 表示各数据元素之间的前后件关系(逻辑关系,与数据在计算机中的存储位置无关) 所谓数据的逻辑结构,是指反映数据元素之间逻辑关系的数据结构。P11(2)数据的存储结构 数据的逻辑结构在计算机存储空间中的存放形式称为数据的存储结构(物理结构)。 在数据的存储结构中,不仅要存放各数据元素的信息,还需要存放各数据元素之间的前后件关系。 常用的存储结构有顺序、链接、索引等存储结构。 采用不同的存储结构,其数据处理的效率是不同的。 插入与删除是对数据结构的两种基本运算。P132、数据结构的图形表示、数据结构的图形表示 每一个数据元素用中间标有元素值的方框表示,称之为数据结点数据结点。 用一条有向

6、线段从前件指向后件,以表示数据元素之间的前后件关系。 没有前件的结点称为根根结结点点;没有后件的结点称为终端结点终端结点(叶子结点)。P133、线性结构与非线性结构、线性结构与非线性结构如果在一个数据结构中一个数据元素都没有,则该数据结构称为空的数据结构。根据数据结构中各数据元素之间的前后件关系的复杂程度,将数据结构分为两大类:线性结构和非线性结构。P14(1)线性结构 一个非空数据结构如果: 有且只有一个根结点 每一个结点最多有一个前件和一个后件 则称之为线性结构线性结构(线性表线性表)。一个线性结构中插入或删除任何一个结点后还应是线性结构。如果一个线性结构满足上述两个条件,但当在此数据结构

7、中插入或删除任何一个结点后不再满足上述条件,则该数据结构不能称线性结构。P14(2)非线性结构 一个数据结构不是线性结构,则称之为非非线线性性结构结构。线性结构和非线性结构都可以是空的数据结构。空的数据结构是线性结构还是非线性结构,要根据具体情况定。 对该数据结构的运算按线性结构的规则处理,则属线性结构。 对该数据结构的运算按非线性结构的规则处理,则属非线性结构P15三、线性表及其存储结构三、线性表及其存储结构1、线性表的概念、线性表的概念 线性表是最简单、最常用的一种数据结构。 线性表由一组数据元素构成,一个数据元素可以是个简单项,也可以由若干个数据项组成。(由若干个数据项组成的数据元素称为

8、记录,而由多个记录构成的线性表称为文件)。 线性表线性表是由n(n0)个数据a1 , a2 , a3 , , ai , , an组成的一个有限序列,表中的每一个数据元素,除第一个外,有且只有一个前件;除了最后一个外,有且只有一个后件。即线性表可能表示为:( a1 , a2 , a3 , ai , , an) 线性表中结点的个数n称为线性表的长度。当n = 0 时,称为空表。P15非空线性表的结构特征: 有且只有一个根结点a1,它无前件。 有且只有一个终结点an,它无后件。 除根结点与终结点外,其它所有结点有且只有一个前件,也有且只有一个后件。P162、线性表的顺序存储结构、线性表的顺序存储结构

9、线性表的顺序存储结构有以下两个基本特点: 线性表中所有元素所占的存储空间是连续的 线性表中各元素在存储结构中是按逻辑顺序依次存放的P163、线性表的插入运算、线性表的插入运算 插入运算是指在结构中的某指定位置上增加一个新结点。 线性表的插入操作是指在线性表的第i 1个数据元素和第i个数据元素之间插入一个新的数据元素,使长度为n的线性表变为长度为n + 1的线性表。P17 一般情况下,要在第i(1in)个元素之前插入一个新元素时,首先要从最后一个(即第n个元素)开始,直到第i个元素之间共n i + 1个元素依次向后移动一个位置后,在空出的第i个位置上插入新元素项。 在平均情况下,要在线性表中插入

10、一个新元素,需要移动表中一半的数据元素。 插入操作使数据元素ai 1和ai之间的逻辑关系发生了变化。P174、线性表的删除运算、线性表的删除运算 删除运算是指撤消结构中某结点的内容。 与插入操作相反,线性表的删除操作使长度为n的线性表变为长度为n 1 的线性表。 删除操作使数据元素ai 1 , ai 和ai + 1之间的逻辑关系发生了变化。 一般情况下,要删除第i(1in)个元素时,首先要从第i + 1一个元素开始,直到第n个元素之间共n i个元素依次向前移动一个位置。P18【例】如果一个线性表第1个元素的存储地址是100,每个元素的长度是2,则第5个元素的地址是_ 。分析: 数据元素的存储地

11、址取决于第1个元素的存储地址,即:第i个元素的存储地址 = 第1个元素的地址 + ( i 1 )每个元素的长度108四、栈和队列四、栈和队列1、栈及其基本运算、栈及其基本运算(1)栈的概念 栈是限定在一端进行插入与删除操作的特殊的线性表。 栈中允许插入与删除操作的一端称为栈栈顶顶;不允许插入与删除的一端称为栈底栈底。 栈顶元素总是最后被插入的元素,从而也是最先 被 删 除 的 元 素 。 即 栈 是 按 “先 进 后 出”(FILO)的原则组织数据的。因此,栈具有记忆作用。 通常用指针top指示栈顶位置;指针bottom指向栈底位置。P19(2)栈的顺序存储及其运算栈的顺序存储结构是指利用一组

12、地址连续的存储单元依次存放自栈底到栈顶的数据元素,同时附设指针指示栈顶元素在顺序栈中的位置(详见教材P20图)。栈的基本运算有三个: 入栈在栈顶位置插入一个新元素。可分为两个基本操作: 将栈顶指针进一 将新元素插入到栈顶指针指向的位置 当栈顶指针指向存储空间的最后一个位置时,栈空间已满,不能再进行入栈操作,称作“上溢”错误。P20 退栈从栈中删除一个元素(栈顶元素)。可分为两个基本的操作: 将栈顶元素(栈顶指针指向的元素)赋于一个指定的变量 栈顶指针退一 当栈顶指针为零时,栈已空,不能再进行退栈操作,称作“下溢”错误。 读栈顶元素将栈顶元素赋于一个指定变量。 读栈顶元素时,并不删除栈顶元素,只

13、是将它的值赋于一个变量,因此栈顶指针不会改变。 当栈顶指针为零时,栈已空,读不到栈顶元素。P212、队列及其基本运算、队列及其基本运算(1)队列的概念 队列是指允许在一端进行插入,而在另一端进行删除的线性表。 允许插入的一端称为队队尾尾;队尾指针(rear)指向队尾元素(最后被插入的元素)。 允许删除的一端称为排排头头。排头指针(front)指向排头元素的前一个位置排头元素的前一个位置。 队列中,最先被插入的元素,最先被删除。即队列是一个“先进先出”(FIFO)的线性表。 入队运算只涉及队尾指针的变化;退队运算只涉及排头指针的变化。 用一维数组作为队列的顺序存储空间。P21(2)循环队列及其运

14、算 队列的顺序存储结构一般采用循环队列的形式。 循环队列就是将队列存储空间的最后一个位置绕到第一个位置,形成逻辑上的环状空间,供队列循环使用(P22)。 在循环队列中,用队尾指针(rear)指向队列中的队尾元素,用排头指针(front)指向排头元素的前一个位置。 从排头指针指向的后一个位置到队尾指针指向的位置之间所有的元素均为队列中的元素。 循环队列的初始状态为空,即: rear = front = mP22 循环队列有两种基本运算(参见P23图示): 入队运算 每进行一次入队运算,队尾指针就进一。当队尾指针rear = m + 1时,则置rear = 1。 退队运算 每进行一次退队运算,排头

15、指针就进一。当排头指针front = m + 1时,则置front = 1。 当循环队列满时,有front = rear;而当循环队列空时,也有front = rear。即不能根据front = rear来判断队列的满还是空。 循环队列的满与空由增加的标志s定义: s = 0(队列为空) s = 1(队列非空)因此:队列为空的条件: s = 0 队列满的条件: s = 1 且front = rear = mP22 入队运算在队尾加入一个新元素。可分为两个基本的操作: 队尾指针进一(即:rear = rear + 1),并当rear = m + 1时,置rear = 1 将新元素插入到队尾指针指

16、向的位置 当循环队列非空且队尾指针等于排头指针时,循环队列已满,不能进行入队运算,称作“上溢”。P23 退队运算在队头位置退出一个元素并赋给指定的变量。可分为两个基本的操作: 排头指针进一(即:front = front + 1),并当front = m + 1时,置front = 1 将排头指针指向的元素赋给指定的变量。 当循环队列为空进,不能进行退队运算,称作“下溢”。P23【例】假设用一个长度为50的数组(数组元素的下标从0到49)作为栈的存储空间,栈底指针bottom指向栈底元素,栈顶指针top指向栈顶元素,如果bottom=49,top=30(数组下标),则栈中具有 _ 个元素。分析

17、:在程序设计语言中,用一维数组S作为栈的顺序存储空间,m为栈的最大容量。通常栈底指针指向数组的S(m-1)元素。 栈中的元素个数 = bottomtop1即:4930120。20【例】一个栈的入栈序列是1 , 2 , 3 , , n,其出栈序列是P1 , P2 , P3 , , Pn。如果P1 = n,那么Pi为_ 。分析: 栈是先进后出的线性表。当P1 = n,即n是最先出栈的,n必定是最后入栈的。那么,进栈顺序是:1 , 2 , 3 , , n,则出栈的顺序是:n , n 1 , n 2 , , 1。n i + 1【例】某循环队列的容量是50,如果排头指针front = 45,队尾指针re

18、ar = 10,则该循环队列中共有 _ 个元素。分析: 循环队列的排头指针front指向第一个元素的前一个位置,队尾指针rear指向队尾元素。从排头指针指向的后一个位置到队尾指针指向的位置之间所有的元素均为队列中的元素。循环队列中元素的个数是由排头指针和队尾指针共同决定。设队列的容量为n,队列中的元素个数为m,则: 若rear frontm = rear front 若rear 1,则该结点的父结点编号为INT( k / 2 ) 若2kn,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(显然也无右子结点) 若2k + 1n,则编号为k的结点的右子结点编号为2k + 1;否则该结点无

19、右子结点P363、二叉树的存储结构、二叉树的存储结构 二叉树通常采用链式存储结构(二叉链表)。 二叉树各元素的存储结点由两部分组成:数据域和指针域。 二叉树的指针域有两个 左指针域 指向该结点的左子结点存储地址 右指针域 指向该结点的右子结点存储地址P364、二叉树的遍历、二叉树的遍历 二叉树的遍历是指不重复地访问二叉树中的所有结点。 二叉树的遍历分为三种: 前序遍历 中序遍历 后序遍历P38(1)前序遍历 若二叉树为空,则结束遍历返回;否则: 访问根结点;前序遍历左子树;前序遍历右子树。 在遍历左、右子树时,仍然先访问根结点,然后前序遍历左子树,最后前序遍历右子树。P38A、B、D、H、I、

20、E、J、K、C、F、L、M、G、N、O(2)中序遍历 若二叉树为空,则结束遍历返回;否则: 中序遍历左子树;访问根结点;中序遍历右子树。 在遍历左、右子树时,仍然先中序遍历左子树,然后访问根结点,最后中序遍历右子树。P38H、D、I、B、J、E、K、A、L、F、M、C、N、G、O(3)后序遍历 若二叉树为空,则结束遍历返回;否则: 后序遍历左子树;后序遍历右子树;访问根结点。 在遍历左、右子树时,仍然先后序遍历左子树,然后后序遍历右子树,最后访问根结点。P38H、I、D、J、K、E、B、L、M、F、N、O、G、C、A 实际进行二叉树的遍历时可以采用从下至上的办法进行,即:对最底层的子树按顺序遍

21、历,并将结果赋于该子结点;依次往上推,直至根结点。 【例】下图所示的二叉树的前序遍历是 _ 。A、B、D、H、E、C、F、I、J 、GABCDHFGJIED HF I JB D H EC F I J G 【例】下图所示的二叉树的中序遍历是 _ 。D、H、B、E、A、I、F、J、C 、GABCDHFGJIED HI F JD H B EI F J C G 【例】下图所示的二叉树的后序遍历是 _ 。H、D、E、B、I、J、F、G、C 、AABCDHFGJIEH DI J FH D E BI J F G C 【例】设一棵二叉树的前序遍历结果为A、B、D、E、C、F,中序遍历结果为D、B、E、A、F、

22、C。则其后序遍历的结果为 _ 。分析:(1)由前序可知:A为根结点;(2)由中序可知:D、B、E是根结点A的左子树;F、C是其右子树;(3)由前序可知: DBE中,B为父结点(B在D和E之前);并由中序可知:D是B的左结点(D在B之前),E是B的右结点;(4)依次类推。P47D、E、B、F、C 、AABCDFE 【例】设一棵二叉树的中序遍历为CDBAFEHG,后序遍历为DCBFHGEA。则其前序遍历的结果为 _ 。分析:(1)由后序可知:A为根结点;(2)由中序可知:CDB是根结点A的左子树;FEHG是其右子树;(3)由后序可知: CDB中,B为父结点(B在C和D之后);并由中序可知:CD是B

23、的左结点;(4)CD中,C是父结点,D是其右结点。P47ABCDEFGHABECFGDH七、查找技术七、查找技术 查找是指在一个给定的数据结构中查找某个指定的元素。根据不同的数据结构,应采用不同的查找方法。1、顺序查找、顺序查找 一般是指在线性表中查找指定的元素。 查找方法:从线性表的第一个元素开始,依次将线性表中的元素与被查找元素进行比较。 在下列两种情况下只能采用顺序查找: 线性表为无序表 线性表虽然有序,但采用链式存储结构 长度为n的线性表,最坏情况下顺序查找需要比较n次。P392、二分法查找、二分法查找 只适用于顺序存储的有序表(按元素值从小到大排列,允许相邻元素值相等)。 查找方法:

24、将表的中间项与查找值x比较: 相等 说明已查找到,结束查找 大于x 在表的上半部分以同样方式查找 小于x 在表的下半部分以同样方式查找 长度为n的有序线性表,最坏情况下二分法查找需要比较log2n次。P39八、排序技术八、排序技术 排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。1、交换类排序、交换类排序(1)冒泡法 通过相邻数据元素的交换逐步使表有序。 长度为n的线性表,在最坏的情况下,冒泡排序需要经过n/2次的从前至后的扫描和n/2次的从后至前的扫描,需要比较次数为:n ( n 1 ) / 2(2)快速排序法 快速排序法的关键是对线性表进行分割,以及对各分割出的子表再进行子分割。

25、P402、插入类排序、插入类排序(1)简单插入排序 将无序序列中的各个数据元素依次插入到已经有序的线性表中。 长度为n的线性表,在最坏的情况下,简单插入排序需要经过n ( n 1 ) / 2次的比较。(2)希尔排序法 将整个无序序列分割成若干小的子序列分别进行插入排序。 长度为n的线性表,在最坏的情况下,希尔排序所需要的比较次数为:O ( n1.5 )P423、选择类排序、选择类排序(1)简单选择排序 扫描整个线性表,从选出最小的元素,将它交换到最前面;对剩下的子表采用同样的方法,直到子表为空。 长度为n的序列,在最坏的情况下,简单选择排序法需要经过n ( n 1 ) / 2次的比较。(2)堆

26、排序法 长度为n的序列,在最坏的情况下,堆排序的比较次数为O ( nlog2n )P44 【例】长度为n的有序线性表中进行的二分法查找,需要的比较次数为 _ 。【例】在最坏的情况下,冒泡排序的时间复杂度为 _ 。【例】一个容量为15的循环队列中,如果其头指针front = 6,尾指针rear = 9,则该循环队列中共有 _ 个元素。P47log2nn ( n 1 ) / 23【例】下列叙述中正确的是 _ 。A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构11.3B【例】某二叉树共有7个结点,其中叶子结点

27、只有1个,则该二叉树的深度为 _ 。A)3B)4C)6D)7【例】有序线性表能进行二分查找的前提是该线性表必须是 _ 存储的。 11.3D顺序【例】在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是_ 。A)O(n) B)O(n2)C)O(log2n) D)O(nlog2n) 分析:二分查找的效率要比顺序查找高得多。对于长度为n的有序线性表,在最坏情况下,二分查找只需要比较log2n次,而顺序查找需要比较n次。C 【例】设树T的度为4,其中度为1 , 2 , 3 , 4的结点个数分别为:4 , 2 , 1 , 1。则这棵树中的叶子结点有 _ 。分析:(1)此树的结点数(含根结点和

28、叶子结点)共计:14 + 22 + 31 + 41 + 1 =16(2)此树的子树共计:4 + 2 + 1 + 1 =8(3)因此该树的叶子结点为:16 8 = 8P478 【例】设树一棵二叉树有10个度为1的结点,7个度为2的结点,则该二叉树共有 _ 个结点。分析:(1)二叉树的结点数应该是度分别为0(叶子结点)、1、2的结点数之和。(2)二叉树的叶子结点总比度为2的结点多1个。(3)因此该二叉树的结点数为: 10 + 7 + 14 = 2525【例】在深度为7的满二叉树中,度为2的结点个数有 _ 个。分析:根据二叉树性质1,满二叉第7层的叶子结点数为27-1个,即64个。根据二叉树的叶子结

29、点总比度为2的结点数多1个的结论,故度为2的结点个数为:64 - 1 =6363 【例】设一棵二叉树的前序遍历结果为A、B、D、H、E、C、F、I、J 、G ,中序遍历结果为D、H、B、E、A、I、F、J、C 、G 。则其后序遍历的结果为 _ 。分析:(1)A为根结点; D、H、B、E是A左子树;I、F、J、C 、G 为右子树。(2)B是父结点;D、H是B的左子树;E是右子树;H是D的右结点。(3)C是父结点;I、F、J是C的左子树,G是C的右结点。(4)F是父结点,I是其左结点,J是其右结点。H、D、E、B、I、J、F、G、C 、AADHFGJIEBC 【例】某二叉树有5个度为2的结点,则该

30、二叉树中的叶子结点数是 _ 。A)10 B)8 C)6 D)4分析:由二叉树的基本性质3可知:在任意一棵二叉树中,度为0的结点(即叶子结点)总比度为2的结点多一个。可知,此二叉树的叶子结点个数为: 5 + 1 = 6。P47C 【例】设一棵完全二叉树共有700个结点,则在该二叉树中有 _ 叶子结点。分析:根据完全二叉树的性质6(P36)可知:(1)编号700的叶子结点(即最后一个叶子结点),其父结点编号为:INT( 700 / 2 ) =350(2)编号为350的结点为最后一个树结点,即:编号1至350均为父结点,计350个;编号351至700均为叶子结点。(3)所以叶子结点的个数为:700

31、350 = 350P47350 【例】支持子程序调用的数据结构是 _。A)栈 B)树 C)队列 D)二叉树分析:由子程序调用的过程可知每次子程序运行结束后都将返回至调用它的程序中。而存储其调用地址的数据结构须具备“先进后出”的功能,而栈结构正具备此类特点。A第 二 章程序设计基础【本章考试要点本章考试要点】 程序设计方法与风格。 结构化程序设计。 面向对象的程序设计方法,掌握并理解对象、方法、属性,以及继承与多态性的概念。一、程序设计方法与风格一、程序设计方法与风格1、程序设计方法、程序设计方法 结构化程序设计 面向对象程序设计2、程序设计风格、程序设计风格主要注重和考虑的因素: 源程序文档化

32、 数据说明的方法 语句的结构 输入和输出P48二、结构化程序设计二、结构化程序设计1、结构化程序设计原则、结构化程序设计原则 自顶向下 逐步求精 模块化 限制使用Goto语句2、结构化程序的基本结构与特点、结构化程序的基本结构与特点 顺序结构 选择结构(分支结构) 循环结构(重复结构)3、结构化程序设计原则和方法的应用结构化程序设计原则和方法的应用P50三、面向对象的程序设计三、面向对象的程序设计1、对象、对象 面向对象程序设计中的最基本的概念。 用来表示客观世界中的任何实体。 它既可以是具体的物理实体,也可以是一个抽象的概念。 对象具有:标识惟一性、分类性、多态性、封装性和模块独立性。2、属

33、性、属性 对象所包含的信息。 一般只能通过执行对象的操作来改变。P553、操作(方法)、操作(方法) 描述了对象的执行功能,若通过信息传递,还可以为其它对象使用。 操作过程对外是封闭的,用户只能看到这一操作实施后的结果。4、类和实例、类和实例 类是具有共同属性、共同方法的对象的集合。 类的对象的抽象,它描述了属于该对象类型的所有对象的性质;而一个对象则是其对应类的一个实例。P555、消息(事件)、消息(事件) 面向对象的世界是通过对象与对象间彼此的相互合作来推动的,对象间的这种相互合作需要一个机制协助进行,这样的机制称为“消息”。6、继承、继承 继承是使用已有的类定义作为基础建立新类的定义技术

34、。已有的类可当做基类来引用,则新类相应地可当做派生类来引用。 继承是指能够直接获得已有的性质和特征,而不必重复定义它们。P567、多态性、多态性 对象根据所接受的消息而做出的动作,同样的消息被不同的对象接受时可导致完全不同的行动,该现象称为多态性。 多态性是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象,也可以发送给子类对象。 多态性机制增加了面向对象软件系统的灵活性,进一步减少了信息冗余。P58 面向对象程序设计中,对象具有以下特征: 继承性抽象性 封装性多态性【例】编制一个好的程序,首先要确保它的正确性和可靠性,还应强调良好的编程风格。在选择标识符的名字时应考虑 _ 。A

35、)名字长度越长越好,以便理解变量的含义B)多个变量共用一个名字,以减少变量的数目C)选择含义明确的名字,以正确提示所代表的实体D)尽量用关键字作名字,以使名字标准化C【例】面向对象方法中,继承是指 _ 。A)一组对象所具有的相似性质B)一个对象具有另一个对象的性质C)各对象之间的共同性质D)类之间共享属性和操作的机制【例】仅由顺序、选择(分支)和重复(循环)结构构成的程序是 _ 程序。 10.9D结构化第 三 章软件工程基础【本章考试要点本章考试要点】 软件工程基本概念;软件生命周期概念;软件工具与软件开发环境。 结构化分析方法、数据流图、数据字典、软件需求规格说明书的概念。 结构化设计方法、

36、总体设计与详细设计。 软件测试方法、白盒测试与黑盒测试、测试用例设计、软件测试的实施、单元测试、集成测试和测试系统。 程序调试、静态调试与动态调试。一、软件工程基本概念一、软件工程基本概念1、软件定义软件特点、软件定义软件特点 软件是计算机系统中与硬件相互依存的另一部分,它包括:程序、数据及相关文档的完整集合。 软件特点2、软件危机与软件工程、软件危机与软件工程 软件危机是泛指计算机软件的开发和维护过程中所遇到的一系列严重问题,其主要表现于六个方面。 软件工程包括三个要素:方法、工具、过程。 软件工程的核心思想。P603、软件工程过程与软件生命周期、软件工程过程与软件生命周期 软件工程过程是把

37、输入转化为输出一组彼此相关的资源和活动。 软件的生命周期包括(图3.1): 可行性研究与计划制定 需求分析 软件设计(包括:概要设计和详细设计) 软件实现 软件测试 运行和维护其中: 、是定义阶段 、是开发阶段 是维护阶段(含退役)P634、软件工程的目标与原则、软件工程的目标与原则 软件工程的目标是:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。 软件工程的原则(详见教材)P645、软件开发工具与软件开发环境、软件开发工具与软件开发环境 计算机辅助软件工程(CASE)集成了软件、硬件和一个软件工

38、程数据库,从而创建了一个软件工程开发的环境。P65二、结构化分析方法二、结构化分析方法1、需求分析与需求分析方法、需求分析与需求分析方法 需求分析的定义 需求分析阶段的工作 需求分析方法 结构化分析方法 面向对象的分析方法P662、结构化分析方法、结构化分析方法(1)结构化分析方法概述 结构化分析是使用数据流图(DFD)、数据字典(DD)、结构化英语、判定表和判定树等工具来建立一种新的、称为结构化规格的说明的目标文档。 结构化分析的实质是着眼于数据流,自顶向下、逐步分解的系统分析方法来定义系统需求。 结构化分析以数据流图和数据字典作为主要工具,建立系统的逻辑模型。 数据字典描述了所有在目标系统

39、中使用的和生成的数据对象。P67 围绕结构化分析模型的核心有三个图: 实体-关系图(ERD) 描述数据对象及数据对象之间的关系。 数据流图(DFD) 描述数据在系统中如何被传递或变换以及描述如何对数据流进行变换的功能(子功能)。 状态-迁移图(STD) 描述系统对外部事件如何响应、如何动作。 其中:ERD用于数据建模,DFD用于功能建模,STD用于行为建模。(2)结构化分析的常用工具数据流图(DFD) 数据流图是描述数据处理过程的工具,是需求理解的逻辑模型的图形表示。 数据流图中的主要图形元素数据字典(DD) 数据字典是关于数据的信息集合,对数据流图中的各个元素做完整的定义与说明,是数据流图的

40、补充工具。 数据流图和数据字典共同构成系统的逻辑模型。P673、软件需求规格说明书、软件需求规格说明书 软件需求规格说明书是需求分析阶段的最后成果,是软件开发中的重要文档之一。P71三、结构化设计方法三、结构化设计方法1、软件设计的基本概念、软件设计的基本概念 软件设计包括:软件结构设计、数据设计、接口设计、过程设计。 软件设计分为两个步骤: 概要设计 详细设计2、软件设计的基本原理、软件设计的基本原理3、结构化设计方法、结构化设计方法 结构化设计方法的基本思想是:将软件设计成相对独立、单一功能的模块组成的结构。P732、概要设计、概要设计 概要设计的任务 设计软件系统结构 数据结构及数据库设

41、计 编写概要设计文档 概要设计文档评审 面向数据流的设计方法 数据流类型(变换型和事务型) 面向数据流设计方法的实施要点与设计过程P753、详细设计、详细设计 详细设计的任务 详细设计的主要工具 程序流程图(基本图符及5种控制结构) N S图(基本特征) PAD图(基本特征、基本图符及5种控制结构) PDL(常用词汇)P80四、软件测试四、软件测试1、软件测试概述、软件测试概述 软件测试的目的(为了发现错误而执行程序) 软件测试的准则2、软件测试技术与方法综述、软件测试技术与方法综述(1)静态测试与动态测试 静态测试(不实际运行代码) 包括:代码检查、静态结构分析、代码质量度量等。 动态测试(

42、基于计算机的测试) 是为了发现错误而执行程序的过程。P85(2)白盒测试方法 白盒测试(结构测试、逻辑驱动测试)的基本思路 白盒测试的基本原则 白盒测试法是穷举路径测试 白盒测试的主要方法 逻辑覆盖测试(语句覆盖、路径覆盖等) 基本路径测试P85(3)黑盒测试方法 黑盒测试的基本思路 黑盒测试的主要诊断功能 黑盒测试法的主要方法 等价类划分法 边界值分析法 错误推测法 因果图法P90 无论是使用白盒测试方法还是黑盒测试方法或是其它测试方法,针对一种方法设计的测试用例,仅仅是易于发现某种类型的错误,对其它类型的错误不易发现。所以没有一种用例设计方法能能测试方案,而是各有所长。P933、软件测试的

43、实施、软件测试的实施软件测试的实施分为四个步骤: 单元测试 集成测试 确认测试 系统测试P93五、程序的调试五、程序的调试1、程序调试的基本概念、程序调试的基本概念 程序调试的任务(诊断和改正程序中的错误) 程序调试的基本步骤 程序调试的原则2、程序调试的方法、程序调试的方法 强行排错法 回溯法 原因排除法P96【例】面向对象在软件开发中,需求分析阶段产生的主要文档是 _ 。A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书11.3D【例】下列工具中,属于需求分析常用工具的是 _ 。A)PADB)PFDC)N SD)DFDP99DPAD问题分析图PFDN S程序流程图

44、(方框形)DFD数据流图【例】在软件的生命周期中,能够准确地确定软件系统必须做什么和必须具备哪些功能的阶段是 _ 。A)概要设计阶段B)详细设计阶段C)可行性分析阶段D)需求分析阶段D【例】下面描述中错误的是 _ 。A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具【例】对软件设计的最小单位(模块或程序单元)进行的测试通常称为 _ 测试。 11.3A单元或模块【例】软件(程序)调试的任务是 _ 。A)诊断和改正程序中的错误 B)尽可能多地发现程序中的错误 C)发现并改正程序中的所有

45、错误 D)确定程序中错误的性质 分析: 软件调试的任务是诊断和改正程序中的错误,本题正确答案为A。其他三项描述不正确,选项B描述不全面,选项C描述太绝对,选项D描述不符合定义。 10.3A【例】软件测试的目的是 _ 。A)评估软件可靠性 B)发现并改正程序中的错误 C)改正程序中的错误 D)发现程序中的错误 分析: 软件测试的目的是为了发现程序中的错误而运行程序(P85)。 10.9D【例】在进行单元测试时,常用的方法是 _ 。A)采用白盒测试,辅以黑盒测试B)采用黑盒测试,辅以白盒测试C)只使用白盒测试D)只使用黑盒测试分析: 本题考核的是软件测试方法的应用。 白盒测试是测试程序内部的逻辑结

46、构及有关信息; 黑盒测试只依据程序的需求规格说明书,检查程序的功能是否符合它功能说明。 从程序内部的逻辑结构对系统进行测试才是测试的根本,即是比较深层次的测试。A【例】下列叙述正确的是 _ 。A)黑盒测试方法完全不考虑程序的内部结构和内部特征B)黑盒测试方法主要考虑程序的内部结构和内部特征C)白盒测试主要考虑内部的逻辑结构D)以上三种说法都不对A第 四 章数据库设计基础【本章考试要点本章考试要点】 数据库的基本概念:数据库、数据库管理系统、数据库系统。 数据模型、实体联系模型及ER图,从ER图导出关系数据模型。 关系代数运算:集合运算及选择、投影、联接运算。 数据库规范化理论。 数据库设计方法

47、和步骤:需求分析、概念设计、逻辑设计和物理设计的相关策略。一、数据库系统的基本概念一、数据库系统的基本概念1、数据、数据库数据库管理系统、数据、数据库数据库管理系统 数据 数据库 长期存储在计算机内的、有组织的、可共享的数据集合。 数据库是由一个互相关联的数据的集合和一组用以访问这些数据的程序组成。 数据库管理系统 数据库管理员 数据库系统 数据库应用系统P1012、数据库系统的发展、数据库系统的发展 人工管理阶段 文件系统阶段 数据库系统阶段3、数据库系统的基本特点数据库系统的基本特点 数据的集成性 数据的高共享性与低冗余性 数据的独立性(物理独立性与逻辑独立性) 数据统一管理与控制P105

48、 1074、数据库系统的内部结构体系、数据库系统的内部结构体系 三级模式 概念模式 内模式 外模式 两级映射 概念模式到内模式的映射 外模式到概念模式的映射P108【例】下面关于数据库系统的叙述中,叙述正确的是 _ 。A)数据库系统的数据可为各种用户共享B)数据库系统消除了数据冗余C)数据库系统中的数据的一致性是指数据类型的一致性D)数据库系统比文件系统能管理更多的数据A【例】数据库系统的核心是 _ 。A)数据模型B)数据库C)数据库管理系统D)数据库应用系统B二、数据模型二、数据模型1、数据模型的基本概念、数据模型的基本概念 数据模型的定义 数据模型所描述内容的三个部分 数据结构 数据操作

49、数据约束 数据模型的类型 概念模型面向用户的模型 逻辑模型(数据模型)面向数据库系统的模型,只有转换成数据模型后才能在数据库中得以表示 物理模型面向计算机的物理表示P1092、E R 模型模型 长期以来被广泛使用的概念模型是E R模型 E R模型的基本概念 实体 属性 联系(1:1、1:m、m:n) E R模型三个基本概念之间的连接关系 实体集(联系)与属性之间的连接关系 实体(集)与联系P110 E R模型的图示法 实体集表示法 属性表示法 联系表示法 实体集(联系)与属性之间的连接关系 实体集与联系之间的连接关系P1123、层次模型、层次模型 是最早发展起来的数据库模型 层次模型的基本结构

50、是树形结构 树结构的特点4、网状模型、网状模型 是一个不加任何条件限制的无向图 一般采用分解的方法将一个网络分成若干个二级树P1145、关系模型、关系模型 关系的数据结构 关系模型采用二维表来表示 二维表由表的框架(结构)和表的元组(记录)组成 二维表一般满足七个性质 关系模型中的重要概念 键(码) 键(二维表中凡能惟一识别元组的最小属性集称该表的键) 候选键 主键 外键P116 关系操纵 关系模型的数据操纵是建立在关系上的数据操纵,包括: 数据查询 数据删除 数据插入 数据修改P117 关系中的数据约束 关系模型允许3类数据约束: 实体完整性约束主键的值不能为空 参照完整性约束不允许关系引用

51、不存在的元组 用户自定义约束针对具体数据环境由用户设置的约束P118【例】在关系数据库中,用来表示实体之间联系的是 _ 。A)树形结构B)网状结构C)线性表D)二维表D【例】将E R图转换到关系模式时,实体与联系都可以表示为 _ 。A)属性B)关系C)键D)域B三、关系代数三、关系代数1、关系模型的基本操作、关系模型的基本操作 关系是由若干个不同的元组所组成,因此关系可视为元组的集合。 关系模型有插入、删除、修改和查询4种操作,这4种操作可分解为6种基本操作。 关系的属性指定 关系的元组选择 关系的合并 关系的查询 关系元组的插入 关系元组的删除P1182、关系模型的基本运算、关系模型的基本运

52、算 关系是有序组的集合,因此可以将操作看作是集合的运算。 关系模型的基本运算包括: 插入RR 删除R - R 修改( R - R )R (先删后插) 查询 用于查询运算的3个操作需引入新的运算: 投影Ai1 , Ai2 , , Aim( R ) 选择F( R ) 笛卡尔儿积 T = RSP1193、关系代数中的扩充运算、关系代数中的扩充运算 交运算RS = R - ( R - S ) 除运算TR = S 或 T / R 连接与自然连接运算 连接是将两个关系按指定的条件合并成一个关系(条件可以是等值或不等值) 自然连接必须满足: 两关系间有公共域 通过公共域的相等值进行连接P120【例】关系R和

53、S如下图,它们自然连接后得到T。P123ABCD1234158324261147DE51647368ABCDE242642426812473TRS【例】关系R和S如下图,它们按D E进行连接后得到T。P123ABCD123432187311EF187952ABCDEF123418321818321879321852TRS【例】在关系A( S , SN , D )和B( D , CN , NM )中,A的主关键字是S,B的主关键字是D,则称 _ 是关系A的外码。11.3D【例】有三个关系R、S和T如下所示。则由关系R和S得到关系T的操作是 _ 。A)自然连接B)交C)投影D)并 R S T10.

54、9AABCa12b21c31ADc4ABCDc314【例】设有如下三个关系表,下列操作中正确的是 _ 。 R S TA)T = RS B)T = RSC)T = RSD)T = R / SC(笛卡尔积)AmnBC13ABCm13n13【例】有三个关系R、S和T如下所示。则由关系R和S得到关系T的操作是 _ 。A)自然连接B)交C)除D)并 R S T11.3CABCa12b21c31ABc3C1 除运算的定义较为复杂,是笛卡积的逆运算。教材P121的例子能很好说明问题。ABCD12347856783412561242CD3456AB1278CD34AB1278CD345642AB12四、数据库

55、设计与管理四、数据库设计与管理1、数据库设计概述、数据库设计概述 数据库设计一般采用生命周期法。 数据库应用系统的开发分为若干个阶段 需求分析阶段(需求说明书) 概念设计阶段(概念数据模型) 逻辑设计阶段(逻辑数据模型) 物理设计阶段(数据库内模式) 编码阶段 测试阶段 运行阶段 进一步修改阶段P125数数据据库库设设计计2、数据库设计的需求分析、数据库设计的需求分析 需求分析是设计数据库的起点 需求分析的任务 需求分析的主要工具是数据流图 数据字典是进行详细的数据收信和数据分析所获得的主要结果,包括五个部分: 数据项(数据的最小单位) 数据结构 数据流(可以是数据项或数据结构) 数据存储 处

56、理过程P1263、数据库的概念设计、数据库的概念设计 数据库概念设计的目的 数据库概念设计的方法 集中式模式设计法 视图集成设计法 数据库概念设计的过程(使用E R图)4、数据库的逻辑设计数据库的逻辑设计 逻辑设计是在概念设计的基础上,将与数据库管理系统无关的E R图转换成以数据库管理系统的逻辑数据模型表示的逻辑模式(关系数据模型) 逻辑设计的过程P126 1305、数据库的物理设计、数据库的物理设计 数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于给定的数据库管理系统和计算机系统 物理设计的主要目标 物理设计的内容 索引设计 集簇设计 分区设计P131【例】层次型、网状型

57、和关系型数据库划分原则是 _ 。A)记录长度B)文件的大小C)联系的复杂程度D)数据之间的联系方式10.9D【例】数据库设计中反映用户对数据要求的模式是 _ 。A)内模式B)概念模式C)外模式D)设计模式【例】数据库设计数据库设计的四个阶段是:需求分析,概念设计,逻辑设计和 _ 。 10.9C物理设计【例】数据库管理系统中负责数据模式定义的语言是 _ 。A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语言10.3A【例】在学生管理的关系数据库中,存取一个学生信息的数据单位是 _ 。A)文件B)数据库C)字段D)记录10.3D【例】有一个学生选课的关系,其中学生的关系模式为:学生(学

58、号,姓名,班级,年龄),课程的关系模式为:课程(课号,课程名,学时)。其中两个关系模式的键分别是学号和课号。则关系模式选课可定义为:选课(学号,_ ,成绩)。10.3课号全国计算机等级考试2011年9月二级试题1、下列叙述中正确的是( )。A)算法就是程序B)设计算法时只需要考虑数据结构的设计C)设计算法时只需要考虑结果的可靠性D)以上三种说法都不对【分析】 算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。算法不等于程序,程序不可能优于算法。答案:答案:D【相关链接】 算法的基本特性:可行性:根据实际问题设计的算法,执行得到满意结果确

59、定性:每一步骤必须有明确定义,不允许有多义性有穷性:算法必须能在有限的时间内做完拥有足够的情报: 输入和输出必须拥有足够的情报方可执行 2、下列关于线性链表的叙述中,正确的是( )。A)各数据结点的存储空间可以不连续,但它们的存储顺序与逻辑顺序必须一致B)各数据结点的存储顺序与逻辑顺序可以不一致,但它们的存储空间必须连续C)进行插入与删除时,不需要移动表中的元素D)以上三种说法都不对 【分析】线性链表的基本概念: 在链式存储结构中,每个结点由两部分构成:数据域(存放数据元素值)和指针域(存放下一元素的结点地址) 链式存储结构中,存储数据结构的存储空间可以不连续,数据元素之间的逻辑关系由指针域确

60、定 链式存储方式既可以表示线性结构,也可以表示非线性结构 线性链表进行插入和删除时,仅修改指针域中的地址。答案:答案:C3、下列关于二叉树的叙述中,正确的是( )。A)叶子结点总是比度为2的结点少一个B)叶子结点总是比度为2的结点多一个C)叶子结点数是度为2的结点数的两倍D)度为2的结点数据是度为1的结点数的两倍答案:答案:B4、软件按功能可以分为应用软件)系统软件和支撑软件(或工具软件)下面属于应用软件的是( )。A)学生成绩管理系统B)C语言编译程序C)UNIX操作系统D)数据库管理系统答案:答案:A5、某系统总体结构图如下所示:该系统总体结构图的深度是( )。A)7B)6C)3D)2答案

61、:答案:CXY系统功能2功能1功能3功能2.2功能2.1功能2.36、程序调试的任务是( )。A)设计测试用例B)验证程序的正确性C)发现程序中的错误D)诊断和改正程序中的错误 答案:答案:D7、下列关于数据库设计的叙述中,正确的是( )。A)在需求分析阶段建立数据字典B)在概念设计阶段建立数据字典C)在逻辑设计阶段建立数据字典D)在物理设计阶段建立数据字典 【分析】:此题是考核数据库设计各个阶段的任务和成果。 需求分析阶段(用数据流图DFD表达数据和处理过程的 关系;用数据字典对系统中的数据进行详细描述) 概念设计阶段(建立一个数据的抽象模型,使用E-R模 型和视图集成法进行设计) 逻辑设计

62、阶段(将E-R模型转换为逻辑数据模型) 物理设计阶段(数据库的物理结构设计)答案:答案:A8、下列关于数据库系统的三级模式不包括( )。A)概念模式B)内模式C)外模式D)数据模式答案:答案:D9、有三个关系R)S和T如下:则由关系R和S得到关系T的操作是( )。A)自然连接B)差C)交D)并答案:答案:B10、下列选项中属于面向对象设计方法主要特征的是( )。A)继承B)自顶向下C)模块化D)逐步求精【分析】 结构化程序设计方法的主要原则是自顶向下、逐步求精、模块化,以及限制使用Goto语句。 面向对象程序设计的3个主要特征是:封装性、继承性和多态性。答案:答案:A1、数据结构分为线性结构与

63、非线性结构,带链的栈属于( )。【分析】根据数据中各数据元素之间前后关系的复杂程序,一般将数据结构分为两大类型:线性结构和非线性结构。线性结构表示数据元素之间为一对一的关系,非线性结构表示数据元素之间为一对多或者多对一的关系。根据各种结构的定义可知带链的栈是一种线性结构 。答案:线性结构答案:线性结构2、在长度为N的顺序存储的线性表中插入一个元素,最坏情况下需要移动表中( )个元素。【分析】 一般情况下,要在第i(1in)个元素之前插入一个新元素时,首先要从最后一个(即第n个元素)开始,直到第i个元素之间共n i + 1个元素依次向后移动一个位置后,在空出的第i个位置上插入新元素项。 在平均情

64、况下,要在线性表中插入一个新元素,需要移动表中一半的数据元素。答案:答案:N3、在常见的软件开发方法有结构化方法和面向对象方法,对某应用系统经过需求分析建立数据流图DFD,则应采用( )方法。答案:结构化答案:结构化4、数据库系统的核心是( )。答案:数据库管理系统答案:数据库管理系统5、在进行关系数据库的逻辑设计时,E-R图中的属性常被转换为关系中的属性,联系通常被转换为( )。答案:关系答案:关系全国计算机等级考试2011年3月二级试题1、下列关于栈叙述正确的是( )。A)栈顶元素最先能被删除 B)栈顶元素最后才能被删除 C)栈底元素永远不能被删除 D)以上三种说法都不对 【分析】 栈是限

65、定在一端进行插入与删除的特殊线性表。允许进行插入和删除操作的一端称为栈顶(top),另一端为栈底(bottom);栈底固定,而栈顶浮动。 栈是按“先进后出”的原则组织数据的。先进入的数据被压入栈底,最后进入的数据在栈顶,需要读数据时从栈顶开始弹出数据(最后一个进入数据被第一个读出来)。答案:答案:A2、下列叙述中正确的是( )。A)有一个以上根结点的数据结构不一定是非线性结构B)只有一个根结点的数据结构不一定是线性结构C)循环链表是非线性结构D)双向链表是非线性结构 【分析】 一个非空结构是线性结构的话,必须满足以下两个条件: 有且只有一个根结点 每一个结点最多有一个前件和一个后件 线性结构指

66、的是数据元素之间存在着“一对一”线性关系的数据结构,这样的结构中只有一个根结点,如循环链表和双向链表;非线性结构指的是数据元素之间存在着“一对多”非线性关系的数据结构,这样的结构中可能有一个根结点,如树形结构,也可能有多个根结点,如网状结构。 链式存储方式既可以表示线性结构,也可以表示非线性结构答案:答案:B3、下列叙述中某二叉树共有7个结点,其中叶子结点只有1个,则该二叉树的深度为( )。(假设根结点在第1层)A)3B)4C)6D)7【分析】叶子结点个数=度为2的结点个数+1,在此题中叶子结点个数为1,说明度为2的结点数为0,即二叉树中不存在度为2的结点,只有度为1的结点和叶子结点,那么此二

67、叉树就是一棵单支树,树中结点个数即为树的深度 。答案:答案:D4、软件开发中,需求分析阶段产生的主要文档是( )A)软件集成测试计划B)软件详细设计说明书C)用户手册D)软件需求规格说明书答案:答案:D5、结构化程序所要求的基本结构不包括( )。A)顺序结构B)GOTO跳转C)选择(分支)结构D)重复(循环)结构答案:答案:B6、下面描述中错误的是( )。A)系统总体结构图支持软件系统的详细设计B)软件设计是将软件需求转换为软件表示的过程C)数据结构与数据库设计是软件设计的任务之一D)PAD图是软件详细设计的表示工具【分析】系统总体结构支持软件系统的概要设计,其他选项均正确。 答案:答案:A7

68、、负责数据库中查询操作的数据库语言是( )。A)数据定义语言B)数据管理语言C)数据操纵语言D)数据控制语 【分析】数据库中有三种主要程序设计语言类别的语句:数据定义语言(DDL),数据操纵语言(DML)及数据控制语言(DCL)。其中数据操作语言主要负责数据的插入、删除、查询、修改等操作。 答案:答案:C8、一个教师可讲授多门课程,一门课程可由多个教师讲授。则实体教师和课程间的联系是( )。A)1:1联系B)1:m联系C)m:1联系D)m:n联系【分析】两个实体间的联系可分为3种类型:一对一、一对多、多对多联系。在本题中一位教师可讲授多门课程,一门课程可由多位教师讲授,属于多对多联系。 答案:

69、答案:D9、有三个关系R、S和T如下:则由关系R和S得到关系T的操作是( )。A)自然连接B)交C)除D)并答案:答案:CABCa12b21c31ABc3C110、定义无符号整数类为UInt,下面可以作为类UInt实例化值的是( )。A)-369B)369C)0.369D)整数集合1,2,3,4,5【分析】无符号整型Unsigned (UInt),占16位,其范围是065535。 答案:答案:B1、有序线性表能进行二分查找的前提是该线性表必须是( )存储的。【分析】能使用二分法查找的线性表必须满足两个条件:1)用顺序存储结构;2)线性表是有序的。答案:顺序答案:顺序2、一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后序遍历结果为( )。 答案:答案:DEBFCA 3、对软件设计的最小单位(模块或程序单元)进行的测试通常称为( )测试。 【分析】软件测试的过程一般按4个步骤进行,即单元测试、集成测试、验收测试(确认测试)和系统测试。单元测试又称模块测试,是针对软件设计的最小单位 。答案:单元测试或模块测试答案:单元测试或模块测试4、实体完整性约束要求关系数据库中元组的( )属性值不能为空。 答案:主键答案:主键5、在关系A(S,SN,D)和关系B(D,CN,NM)中,A的主关键字是S,B的主关键字是D,则称( )是关系A的外码。 答案:答案:D

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号