



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
全国计算机等级考试公共基础知识总结第一章数据结构与算法1.1算法算法:是指解题方案的准确而完整的描述。算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数卜终止。特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。算法的基本要素:是对数据对象的运算和操作;二是算法的控制结构。指令系统:一个计算机系统能执行的所有指令的集合。基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。算法的控制结构:顺序结构、选择结构、循环结构。算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。算法复杂度:算法时间复杂度和算法空间复杂度。算法时间复杂度是指执行算法所需要的计算工作量。算法空间复杂度是指执行这个算法所需要的内存空间。1.2数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。数据结构是指相互有关联的数据元素的集合。数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。数据的存储结构有顺序、链接、索引等。线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。非线性结构:不满足线性结构条件的数据结构。1.3线性表及其顺序存储结构线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。非空线性表的结构特征:(1)且只有一个根结点al,它无前件;(2)有且只有一个终端结点an,它无后件;(3)除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件。结点个数n称为线性表的长度,当n=0时,称为空表。线性表的顺序存储结构具有以下两个基本特点:(1)线性表中所有元素的所占的存储空间是连续的;(2)线性表中各数据元素在存储空间中是按逻辑顺序依次存放的。ai的存储地址为:ADR(ai)=ADR(al)(i-l)k,,ADR(al)为第一个元素的地址,k代表每个元素占的字节数。顺序表的运算:插入、删除。(详见14-16页)1.4栈和队列栈是限定在一端进行插入与删除的线性表,允许插入与删除的一端称为栈顶,不允许插入与删除的另一端称为栈底。栈按照“先进后出"(FILO)或“后进先出”(LIFO)组织数据,栈具有记忆作用。用top表示栈顶位置,用bottom表示栈底。栈的基本运算:(1)插入元素称为入栈运算;(2)删除元素称为退栈运算;(3)读栈顶元素是将栈顶元素赋给一个指定的变量,此时指针无变化。队列是指允许在一端(队尾)进入插入,而在另一端(队头)进行删除的线性表。Rear指针指向队尾,front指针指向队头。队列是“先进行出"(FIFO)或“后进后出”(L1L0)的线性表。队列运算包括(1)入队运算:从队尾插入一个元素;(2)退队运算:从队头删除一个元素。循环队列:s=0表示队列空,s=l且front=rear表示队列满1.5线性链表数据结构中的每一个结点对应于一个存储单元,这种存储单元称为存储结点,简称结点。结点由两部分组成:(1)用于存储数据元素值,称为数据域;(2)用于存放指针,称为指针域,用于指向前一个或后一个结点。在链式存储结构中,存储数据结构的存储空间可以不连续,各数据结点的存储顺序与数据元素之间的逻辑关系可以不一致,而数据元素之间的逻辑关系是由指针域来确定的。链式存储方式即可用于表示线性结构,也可用于表示非线性结构。线性链表,HEAD称为头指针,HEAD=NULL(或0)称为空表,如果是两指针:左指针(Llink)指向前件结点,右指针(Rlink)指向后件结点。线性链表的基本运算:查找、插入、删除。1.6树与二叉树树是一种简单的非线性结构,所有元素之间具有明显的层次特性。在树结构中,每一个结点只有一个前件,称为父结点,没有前件的结点只有一个,称为树的根结点,简称树的根。每一个结点可以有多个后件,称为该结点的子结点。没有后件的结点称为叶子结点。在树结构中,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度。树的最大层次称为树的深度。二叉树的特点:(1)非空二叉树只有一个根结点;(2)每一个结点最多有两棵子树,且分别称为该结点的左子树与右子树。二叉树的基本性质:(1)在二叉树的第k层上,最多有2k-l(k与l)个结点;(2)深度为m的二叉树最多有2m-l个结点;(3)度为0的结点(即叶子结点)总是比度为2的结点多一个; (4)具有n个结点的二叉树,其深度至少为[log2n]1,其中[log2n]表示取log2n的整数部分:(5)具有n个结点的完全二叉树的深度为[log2n]1;(6)设完全二叉树共有n个结点。如果从根结点开始,按层序(每一层从左到右)用自然数1,2,….n给结点进行编号(k=l,2….n),有以下结论:①若k=l,则该结点为根结点,它没有父结点;若k〉l,则该结点的父结点编号为INT(k/2):②若2k《n,则编号为k的结点的左子结点编号为2k;否则该结点无左子结点(也无右子结点);③若2kIWn,则编号为k的结点的右子结点编号为2k1;否则该结点无右子结点。满二叉树是指除最后一层外,每一层上的所有结点有两个子结点,则k层上有2kT个结点深度为m的满二叉树有2m-l个结点。完全二叉树是指除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点。二叉树存储结构采用链式存储结构,对于满二叉树与完全二叉树可以按层序进行顺序存储。二叉树的遍历:(1)前序遍历(DLR),首先访问根结点,然后遍历左子树,最后遍历右子树;(2)中序遍历(LDR),首先遍历左子树,然后访问根结点,最后遍历右子树;(3)后序遍历(LRD)首先遍历左子树,然后访问遍历右子树,最后访问根结点。7查找技术顺序查找的使用情况:(1)线性表为无序表;(2)表采用链式存储结构。二分法查找只适用于顺序存储的有序表,对于长度为n的有序线性表,最坏情况只需比较log2n次。8排序技术排序是指将一个无序序列整理成按值非递减顺序排列的有序序列。交换类排序法:(1)冒泡排序法,需要比较的次数为n(n-l)/2;(2)快速排序法。插入类排序法:(1)简单插入排序法,最坏情况需要n(n-l)/2次比较;(2)希尔排序法,最坏情况需要O(nl.5)次比较。选择类排序法:(1)简单选择排序法,最坏情况需要n(nT)/2次比较;(2)堆排序法,最坏情况需要0(nlog2n)次比较。第二章程序设计基础1程序设计设计方法和风格如何形成良好的程序设计风格1、源程序文档化;2、数据说明的方法;3、语句的结构;4、输入和输出。注释分序言性注释和功能性注释,语句结构清晰第一、效率第二.2结构化程序设计结构化程序设计方法的四条原则是:1.自顶向下;2.逐步求精;3.模块化;4.限制使用goto语句。结构化程序的基本结构和特点:(1)顺序结构:一种简单的程序设计,最基本、最常用的结构;(2)选择结构:又称分支结构,包括简单选择和多分支选择结构,可根据条件,判断应该选择哪一条分支来执行相应的语句序列:(3)重复结构:又称循环结构,可根据给定条件,判断是否需要重复执行某一相同程序段。3面向对象的程序设计面向对象的程序设计:以60年代末挪威奥斯陆大学和挪威计算机中心研制的SIMULA语方为标志。面向对象方法的优点:(1)与人类习惯的思维方法一致;(2)稳定性好;(3)可重用性好:(4)易于开发大型软件产品;(5)可维护性好。对象是面向对象方法中最基本的概念,可以用来表示客观世界中的任何实体,对象是实体的抽象。面向对象的程序设计方法中的对象是系统中用来描述客观事物的一个实体,是构成系统的一个基本单位,由一组表示其静态特征的属性和它可执行的一组操作组成。英才家园属性即对象所包含的信息,操作描述了对象执行的功能,操作也称为方法或服务。对象的基本特点:(1)标识惟一性;(2)分类性;(3)多态性;(4)封装性; (5)模块独立性好。类是指具有共同属性、共同方法的对象的集合。所以类是对象的抽象,对象是对应类的一个实例。消息是一个实例与另一个实例之间传递的信息。消息的组成包括(1)接收消息的对象的名称;(2)消息标识符,也称消息名;(3)零个或多个参数。继承是指能够直接获得已有的性质和特征,而不必重宴定义他们。继承分单继承和多重继承。单继承指一个类只允许有一个父类,多重继承指一个类允许有多个父类。多态性是指同样的消息被不同的对象接受时可导致完全不同的行动的现象。第三章软件工程基础1软件工程基本概念计算机软件是包括程序、数据及相关文档的完整集合。软件的特点包括:(1)软件是一种逻辑实体;(2)软件的生产与硬件不同,它没有明显的制作过程;(3)软件在运行、使用期间不存在磨损、老化问题;(4)软件的开发、运行对计算机系统具有依赖性,受计算机系统的限制,这导致了软件移植的问题;(5)软件复杂性高,成本昂贵:(6)软件开发涉及诸多的社会因素。软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。软件危机主要表现在成本、质量、生产率等问题。软件工程是应用于计算机软件的定义、开发和维护的一整套方法、工具、文档、实践标准和工序。软件工程包括3个要素:方法、工具和过程。软件工程过程是把软件转化为输出的一组彼此相关的资源和活动,包含4种基本活动:(1)P——软件规格说明;D——软件开发;C 软件确认;A——软件演进。软件周期:软件产品从提出、实现、使用维护到停止使用退役的过程。软件生命周期三个阶段:软件定义、软件开发、运行维护,主要活动阶段是:(1)可行性研究与计划制定;(2)需求分析:(3)软件设计;(4)软件实现;(5)软件测试;(6)运行和维护。软件工程的目标和与原则:H标:在给定成本、进度的前提下,开发出具有有效性、可靠性、可理解性、可维护性、可重用性、可适应性、可移植性、可追踪性和可互操作性且满足用户需求的产品。基本目标:付出较低的开发成本;达到要求的软件功能;取得较好的软件性能;开发软件易于移植;需要较低的资用;能按时完成开发,及时交付使用。基本原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。软件工程的理论和技术性研究的内容主要包括:软件开发技术和软件工程管理。软件开发技术包括:软件开发方法学、开发过程、开发工具和软件工程环境。软件工程管理包括:软件管理学、软件工程经济学、软件心理学等内容。软件管理学包括人员组织、进度安排、质量保证、配置管理、项目计划等。软件工程原则包括抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性和可验证性。2结构化分析方法结构化方法的核心和基础是结构化程序设计理论。需求分析方法有(1)结构化需求分析方法;(2)面向对象的分析的方法。从需求分析建立的模型的特性来分:静态分析和动态分析。结构化分析方法的实质:着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以数据流图和数据字典为上耍工具,建立系统的逻辑模型。结构化分析的常用工具(1)数据流图;(2)数据字典;(3)判定树;(4)判定表。数据流图:描述数据处理过程的工具,是需求理解的逻辑模型的图形表示,它直接支持系统功能建模。数据字典:对所有与系统相关的数据元素的一个有组织的列表,以及精确的、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。判定树:从问题定义的文字描述中分清哪些是判定的条件,哪些是判定的结论,根据描述材料中的连接词找出判定条件之间的从属关系、并列关系、选择关系,根据它们构造判定树。判定表:与判定树相似,当数据流图中的加工要依赖于多个逻辑条件的取值,即完成该加工的一组动作是由于某一组条件取值的组合而引发的,使用判定表描述比较适宜。数据字典是结构化分析的核心。软件需求规格说明书的特点:(1)正确性;(2)无岐义性;(3)完整性;(4)可验证性:(5)一致性;(6)可理解性;(7)可追踪性。3结构化设计方法软件设计的基本目标是用比较抽象概括的方式确定目标系统如何完成预定的任务,软件设计是确定系统的物理模型。软件设计是开发阶段最重要的步骤,是将需求准确地转化为完整的软件产品或系统的唯一途径。从技术观点来看,软件设计包括软件结构设计、数据设计、接口设计、过程设计。结构设计:定义软件系统各主要部件之间的关系。数据设计:将分析时创建的模型转化为数据结构的定义。接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信。过程设计:把系统结构部件转换成软件的过程描述。从工程管理角度来看:概要设计和详细设计。软件设计的一般过程:软件设计是一个迭代的过程;先进行高层次的结构设计:后进行低层次的过程设计;穿插进行数据设计和接口设计。衡量软件模块独立性使用耦合性和内聚性两个定性的度量标准。在程序结构中各模块的内聚性越强,则耦合性越弱。优秀软件应高内聚,低耦合。软件概要设计的基本任务是:(1)设计软件系统结构:(2)数据结构及数据库设计;(3)编写概要设计文档:(4)概要设计文档评审。模块用一个矩形表示,箭头表示模块间的调用关系。在结构图中还可以用带注释的箭头表示模块调用过程中来回传递的信息。还可用带实心圆的箭头表示传递的是控制信息,空心圆箭心表示传递的是数据。结构图的基本形式:基本形式、顺序形式、重复形式、选择形式。结构图有四种模块类型:传入模块、传出模块、变换模块和协调模块。典型的数据流类型有两种:变换型和事务型。变换型系统结构图由输入、中心变换、输出三部分组成。事务型数据流的特点是:接受一项事务,根据事务处理的特点和性质,选择分派一个适当的处理单元,然后给出结果。详细设计:是为软件结构图中的每一个模块确定实现算法和局部数据结构,用某种选定的表达工具表示算法和数据结构的细节。常见的过程设计工具有:图形工具(程序流程图)、表格工具(判定表)、语言工具(PDL)。4软件测试软件测试定义:使用人工或自动手段来运行或测定某个系统的过程,其目的在于检验它是否满足规定的需求或是弄清预期结果与实际结果之间的差别。软件测试的目的:发现错误而执行程序的过程。软件测试方法:静态测试和动态测试。静态测试包括代码检查、静态结构分析、代码质量度量。不实际运行软件,主要通过人工进行。动态测试:是基本计算机的测试,主要包括白盒测试方法和黑盒测试方法。白盒测试:在程序内部进行,主要用于完成软件内部操作的验证。主要方法有逻辑覆盖、基本基路径测试。黑盒测试:主要诊断功能不对或遗漏、界面错误、数据结构或外部数据库访问错误、性能错误、初始化和终止条件错,用于软件确认。主要方法有等价类划分法、边界值分析法、错误推测法、因果图等。软件测试过程一般按4个步骤进行:单元测试、集成测试、验收测试(确认测试)和系统测试。5程序的调试程序调试的任务是诊断和改正程序中的错误,主要在开发阶段进行。程序调试的基本步骤:(1)错误定位:(2)修改设计和代码,以排除错误;(3)进行回归测试,防止引进新的错误。软件调试可分表静态调试和动态调试。静态调试主要是指通过人的思维来分析源程序代码和排错,是主耍的设计手段,而动态调试是辅助静态调试。主要调试方法有:(1)强行排错法;(2)回溯法;(3)原因排除法。第四章数据库基础1数据库系统的基本概念数据:实际上就是描述事物的符号记录。数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。而数据的值给出了符合定型的值,如整型值15„数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点。数据库管理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是数据库的核心。数据库管理系统功能:(1)数据模式定义:即为数据库构建其数据框架;(2)数据存取的物理构建:为数据模式的物理存取与构建提供有效的存取方法与手段;(3)数据操纵:为用户使用数据库的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算及统计r(4)数据的完整性、安生性定义与检查;(5)数据库的并发控制与故障恢复;(6)数据的服务:如拷贝、转存、重组、性能监测、分析等。为完成以上六个功能,数据库管理系统提供以下的数据语言:(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;(2)数据操纵语言:负责数据的操纵,如查询与增、册h改等;(3)数据控制语言:负责数据完整性、安全性的定义与检直以及并发控制、故障恢复等。数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)。数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。数据库应用系统:由数据库系统、应用软件及应用界面三者组成。文件系统阶段:提供了简单的数据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。层次数据库与网状数据库系统阶段:为统一与共享数据提供了有力支撑。关系数据库系统阶段数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。数据库系统的三级模式:(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据模式;(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。数据库系统的两级映射:(1)概念模式到内模式的映射;(2)外模式到概念模式的映射。2数据模型数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。E-R模型的基本概念(1)实体:现实世界中的事物;(2)属性:事物的特性;(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的值。一个实体的所有属性值叫元组。E-R模型的图示法:(1)实体集表示法;(2)属性表法;(3)联系表示法。层次模型的基本结构是树形结构,具有以下特点:(1)每棵树有且仅有一个无双亲结点,称为根;(2)树中除根外所有结点有且仅有一个双亲。从图论上看,网状模型是一个不加任何条件限制的无向图。关系模型采用二维表来表示,简称表,由表框架及表的元组组成。一个二维表就是一个关系。在二维表中凡能唯一标识元组的最小属性称为键或码。从所有侯选健中选取一个作为用户使用的犍称主键。表A中的某属性是某表B的键,则称该属性集为A的外键或外码。关系中的数据约束:(1)实体完整性约束:约束关系的主键中属性值不能为空值;(2)参照完全性约束:是关系之间的基本约束;(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。3关系代数关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据操作,其中最为著名的是关系代数与关系演算。关系模型的基本运算:(1)插入(2)删除(3)修改(4)查询(包括投影、选择、笛卡尔积运算)4数据库设计与管理数据库设计是数据应用的核心。数据库设计的两种方法:(1)面向数据:以信息需求为主,兼顾处理需求;(2)面向过程:以处理需求为主,兼顾信息需求。数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段。需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。数据字典是各类数据描述的集合,包括5个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种(1)集中式模式设计法(适用于小型或并不复杂的单位或部门):(2)视图集成设计法.设计方法:E-R模型与视图集成。视图设计一般有三种设计次序:自顶向下、由底向上、由内向外。视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。关系视图设计:关系视图的设计乂称外模式设计。关系视图的主要作用:(1)提供数据逻辑独立性;(2)能适应用户对数据的不同需求;(3)有一定数据保密功能。数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径,以提高数据库访问速度有效
利用存储空间。-ORDBMS中留给用户参与物理设计的内容大致有索引设计、集成簇设计和分区设计。数据库管理的内容:(1)数据库的建立;(2)数据库的调整;(3)数据库的重组;(4)数据库安全性与完整性控制;(5)数据库的故障恢复;(6)数据库监控。公共基础知识考题汇编1.1数据结构与算法一、选择题(1)下列叙述中正确的是A)程序执行的效率与数据的存储结构密切相关B)程序执行效率只取决于程序的控制结构C)程序执行的效率只取决于所处理的数据量 D)以上三种说法都不对(2)下列叙述中正确的是A)数据的逻辑结构与存储结构必定是一一对应的B)由于计算机存储空间是向量式的存储结构,因此,数据的存储结构一定是线性结构C)程序设计语言中的数组一般是顺序存储结构,因此,利用数组只能处理线性结构D)以上三种说法都不对(3)冒泡排序在最坏情况下的比较次数是A)n(n+l)/2B)nlog2nC)n(n-l)/2D)n/2(4)一棵二叉树中共有70个叶广结点与80个度为1的结点,则该二叉树中的总结点数为A)219B)221C)229D)231(5)下列叙述中正确的是A)算法的效率只是与问题的规模有关,而与数据的存储结构无关B)算法的时间复杂度是指执行算法所需要的计算工作量C)数据的逻辑结构与存储是一一对应的D)算法的时间复杂度与空间复杂度一定相关(6)下列对队例的叙述正确的是A)队列属于非线性表B)队列按“先进后出”原则组织数据C)队列在队尾删除数据 D)队列按“先进先出”原则组织数据(7)对右图二叉树进行前序遍历的结果为A)DYBEAFCZX B)YDEBFZXCAC)ABDYECFXZ D)ABCDEFXYZ(8)某二叉树中有n个度为2的结点,则该二叉树中的叶子结点数为选择题第(7)题图A)n+1B)n-1C)2nD)n/2(9)下列叙述中正确的是一个算法的空间复杂度大,则其时间复杂度也必定大一个算法的空间复杂度大,则其时间复杂度必定小一个算法的时间复杂度大,则其空间复杂度必定小
D)上述三种说法都不对(10)在长度为64的有序线性表中进行顺序查找,最坏情况下需要比较的次数为A)63B)64C)6D)7(11)对右图二叉树进行中序遍历的结果是A)ACBDFEG B)ACBDFGE(12)按照“后进先出”原则组织数据结构是A)队列B)栈(12)按照“后进先出”原则组织数据结构是A)队列B)栈C)双向链表 D)二叉树选择题第(11)题图(13)下列叙述中正确的是B)栈与队列是非线性结构A)B)栈与队列是非线性结构选择题第(14)题图C)双向链表是非线性结构 选择题第(14)题图(14)对右图二叉树进行后序遍历的结果为A)ABCDEF B)DBEAFCC)ABDECF D)DEBFCA(15)在深度为7的满二叉树中,叶子结点的个数为A)32B)31C)64D)63(16)下列数据结构中,能用二分法进行杳找的是A)顺序存储的有序线性表 B)线性链表 C)二叉链表D)有序线性链表(17)下列关于栈的描述正确的是A)在栈中只能插入元素而不能删除元素 B)在栈中只能删除元素而不能插入元素C)栈是特殊的线性表,只能在一端插入成删除元素D)栈是特殊的线性表,只能在一端插入元素,而在另一端删除元素(18)下列叙述中正确的是A)一个逻辑数据结构只能有一种存储结构B)数据的逻辑结构属于线性结构,且各种存储结构不影响数据处理的效率一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率•个逻辑数据结构可以有多种存储结构,且各种存储结构影响处理的效率(19)数据的存储结构是指A)存储在外存中的数据B)数据所占的存储空间量C)数据在计算机中的顺序存储方式 D)数据的逻辑结构在计算机中的表示(20)下列关于栈的描述中错误的是A)栈是先进后出的线性表 B)栈只能顺序存储C)栈具有记忆作用D)对栈的插入与删除操作中,不需要改变栈底指针(21)对于长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是A)冒泡排序为n/2B)冒泡排序为nC)快速排序为nD)快速排序为n(n-l)/2(22)对长度为n的线性表,在最坏情况下,下列各排序法所对应的比较次数中正确的是A)log2nB)n/2C)nD)n+1(23)下列对于线性链表的描述中正确的是A)存储空间不一定是连续,且各元素的存储顺序是任意的B)存储空间不一定是连续,且前件元素一定存储在后件元素的前面C)存储空间必须连续,且前件元素一定存储在后件元素的前面D)存储空间必须连续,且各元素的存储顺序是任意的二、填空题
⑷填空题第(2)题图(1)⑷填空题第(2)题图存储结构。(2)对下列二叉地进行中序遍历的结果为[21。(3)在深度为7的满二叉树中,度为2的结点个数为:31。(4)按“先进后出”原则组织数据的数据结构是—(5)数据结构分为线性结构和非线性结构,带链的队列属于【51。(6)对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为(7)算法复杂度主要包括时间复杂度和」ZL复杂度。(8)一棵二叉树第六层(根结点为第一层)的结点数最多为」个。(9)数据结构分为逻辑结构和存储结构,循不队列属于191结构。(10)某二叉树中度为2的结点有18个,则该二叉树中有1101个叶子结点。(11)问题处理方案的正确而完整的描述称为fill。1.3全真试题训练一、选择题(1)长度为10的顺序表的首地址是从1023开始的,顺序表中的每个元素的长度为2,在第4个元素前面插入一个元素和删除第7个元素后,顺序表的总长度还是不变。问在执行插入和删除操作前,顺序表中第5个元素在执行插入和删除操作后在顺序表中的存储地址是A)1028B)1029C)1031D)1033(2)下列关于线性表的两种存储结构叙述正确的是A)若存储相同数目的元素,则线性链表比顺序表要节省存储空间B)对无序表的查找,顺序表和线性链表的效率基本上是一样的C)顺序表适用于插入,删除等更新操作频繁的场合D)线性表适用于查询操作比较频繁的场合(3)已知元素的人栈顺序为abcde,则下列哪种出栈顺序是不可能的(出栈和入栈操作可交叉进行)?A)edcbaB)cabdeC)dcbaeD)bcdea(4)在线性链表的插入算法中,若要把结点q插在结点p后面,下列操作正确的是:A)使结点p指向结点q,再使结点q指向结点p的后件结点B)使结点q指向p的后件结点,再使结点p指向结点qC)使结点q指向结点p的后件结点,再使结点q指向结点pD)使结点p指向q的后件结点,再使结点q指向结点p(5)下列叙述中错误的是:A)循环链表中,通过表中的任何一个结点可以访问到表中其他所有的结点B)线性链表的插入和删除效率比顺序表的插入和删除效率高C)线性链表与顺序表相比,它容易实现动态增长D)在线性链表中查找一个元素要比在顺序中查找一个元素快一棵度数为4的树,它的4度结点有1个,3度结点有2个,2度结点有3个,1度结点4个,问它的叶子结点有多少个?A)5B)6C)9D)11一棵深度为m的二叉树2m-l个结点,则最多可以断定此二叉树是A)满二叉树 B)一般的完全二叉树 C)一般的二叉树D)一般的树以下四种树中不是完全二叉树的是(9)在一个xXm的二维线性表中顺序查找一个数据元素的算法时间复杂度是O(n+m)B)O(nXm)C)O(n2)D)O(m2)(10)下面排序算法中,平均排序速度最快的是A)冒泡排序法B)选择排序法C)交换排序法 D)堆排序法(11)下面哪一个不是算法的基本特征?A)可靠性 B)确定性 C)有穷性 D)拥有足够的情报(12)通过列举少量的特殊情况,经过分析,最后找出一般的关系的算法设计思想是A)列举法 B)归纳法 C)递推法 D)递归法(13)常用于解决“是否存在”或“有多少种可能”等类型的问题(例如求解不定议程的问题)的算法设计基本方法是A)归纳法B)递推法C)列举法D)减半递推技术(14)以下算法设计基本方法中基本思想不属于归纳法的是A)递推法 B)递归法 C)减半递推技术D)回溯法(15)在用于分法求解议程在一个闭区间上的实根时,采用的算法设计技术是A)列举法 B)归纳法 C)递归法 D)减半递推法(16)右下图表示的数据结构是A)D={diIl<=i<=6}={dl,d2,d3,d4,d5,d6}R={(dl,d2),(dl,d3),(d3,d4)(d5,d4),(d5,d6)}D={dil1<=i<=6]={d1,d2,d3,d4,d5,d6} R={(dl,d2),(d1,d3),(d3,d4),(d3,d5),(d5,d4),(d5,d6)}D=(dill<=i<=6}={dl,d2,d3,d4,d5,d6} R={(d1,d2),(d1,d3),(d3,d4),(d3,d5),(d5,d6)}D={dil1<=i<=6}={d1,d2,d3,d4,d5,d6) R={(dl,d2),(d1,d3),(d3,d4),(d5,d3),(d5,d4),(d5,d6)}(17)已知线性表的苜元素的地址是1025,每个数据元素的长度为2,则第10个元素的地址为A)1035B)1045C)1027D)1043(18)下列关于链表结构的叙述正确的是A)线性链表、带链的栈和带链的队列的结点的结构都是相同的B)双向链表也就是循环链表 C)线性链表与带链的栈的结点的结构是不同的D)在循环链表中通过任意一个结点可以找到链表中其他所有的结点,而在双向链表中做不到这一点(19)在表示树的多重链表中,除了要存储结点的值和多个指针之外,还必须需耍存储A)结点的度B)结点的层次C)结点的高度D)结点的深度(20)树T的度为4,其中度为1,2,3,4的结点个数分别为4,2,1,1。则T中的叶子结点数为A)8B)7C)6D)5(21)具有8个结点的完全二叉树中编号为4的结点的右子结点的编号为A)8B)9C)无此结点 D)8或是9(22)通过相邻数据元素的交换逐步将线性表变成有序的排序方法是A)冒泡排序法B)简单选择排序法C)简单插入排序法D)希尔排序法(23)快速排序法属于A)选择类排序法B)交换类排序法C)插入类排序法 D)归并类排序法(24)对长度为n的线性表进行推排序的时间复杂度是A)O(n)B)O(nlog2n)C)O(n2)D)O(n15)二、填空题(1)假如刚开始时栈为空,依次有‘A',,B',,C','D'四个元素入栈,此时栈底指针指向元素[11,栈顶指针值为_[21_(假设每个元素的长度为1)。执行四次出栈操作后把'E',下',,G'压入栈,问此时栈底指针指向元素131,此时栈的长度为[41。(2)在一个容量为15的循环险旬中,若头指针front=6,尾指针rear=4,则该循环队列中共有[5]个元素:若头指针front=4,尾指针rear=6,则该循环队列中共有血个元素;若头指针front=6,尾指针rear=6,则该循环队列中共有171个元素。(3)拥有奇数个结点的完全二叉树中有4个内部结点(非叶子结点),请问它的叶子结点数是181。(4)请写出用二分查找法在有序顺序表(1,2,3,4,6,8,9,11)中杳找3的比较序列191.(5)设一棵二叉树的中序遍历结果为DBEACF,前序遍历结果为ABDECF,则后序遍历结果为「101。(6)请写出用冒泡排序法对序列(5,1,7,3,1,6,9,3,2,7,6)进行第一遍扫描后的中间结果是LLUO(7)请写出用冒泡排序法对序列(5,1,7,3,1,6,9,3,2,7,6)进行第一遍扫描后的中间结果是」121(8)请写出用简单选择排序法对序列(5,1,7,3,1,6,9,3,2,7,6)进行第一遍扫描后的中间结果是向31(9)一个算法通常由两种基本要素组成,一是对数据对象的运算和操作,二是[⑷。(10)在一般的计算机系统中,有算术运算、逻辑运算、关系运算和_LH1_四类基本的操作和运算。(11)算法中的每一个步骤都必须有明确的定义,不允许有模棱两可的解释,也不允许有多义性,这是算法的"6特征。(12)算法必须能在有限的时间内完成,即算法必须能在执行有限个步骤之后终止,这是算法的1171特征。(13)1181是一组严谨地定义运算顺序的规则,并且每一个规则都是有•效的,且是明确的,此顺序将在有限的次数下终止。(14)算法中各操作之间的执行顺序称为 (19)。描述算法的工具通常有1201、 1211、1221等。(15)一个算法一般都可以用1231、1241、 1251三种控制结构组合完成。(16)根据提出的问题,列举所有可能的情况,并且问题中给定的条件检验哪些是需要的,哪些是不需要的,这是算法设计基本方法中的1261。(17)通过列举少量的特殊情况,经过分析,最后找出一般的关系,这是算法设计基本方法中的1271。(18)从已知的初始条件出发,逐步推出所要求的各中间结果和最后结果,这是算法设计基本方法中的」2SL。(19)将一个复杂的问题归结为若干个简单的问题,然后将这些较简单的问题再归结为更简单的问题,这个过程可以一直做下去,直到最简单的问题的问题为止,这是算法设计基本方法中的【291。如果一个算法P显式地调用自己则称为1301。如果算法P调用另一个算法Q,而算法Q又调用算法P,则称为【311。(20)将问题的规模减半,而问题的性质不变,再重复“减半”的过程,这是4法设计基本方法中的1321。(21)通过对问题的分析,找出一个解决问题的线索,然后沿着这个线索逐步试探,对于每一步的试探,若试探成功,就得到问题的解,若试探失败,就逐步回退,换别的路线再进行试探,这是算法设计基本方法中的1331(22)数据的逻辑结构有两个要素:一是1341,通常记为侬L二是1361,通常记为137】。(23)表示数据结构的两种方法是[381和[391。(24)在长度为n的顺序存储结构的线性表中,要在第i(l<=i<=n)个元素之前插入一个新元素,则需要移动表中的1401个元素,表的长度为[411:若删除表中的第i(l<=l<=n)个元素,则需要移动表中的1421个元素,表的长度变为[431。(25)在长度为n的顺序存储结构的线性表中,插入(或删除)一个元素,在平均情况下需要移动表中的J44L个元素,在最坏情况下需要移动表中的1451个元素。(26)已知线性表的每个元素占2个字节,它的第5个元素在内存中的存储地址是1005,那么它的第2个元素在内存中的存储地址是1461。(27)树是一种简单的1471(线性/非线性)结构,在树中,所有数据元素之间的关系具有明显的1481特征。(28)设一棵完全二叉树共有700个结点,则在该二叉树中有1491个叶子结点。(29)具有16个结点的完全二叉树的深度为深3。(30)在最坏情况下,冒泡排序的时间复杂度为」HL,简单插入排序的时间复杂度为」S2L,希尔排序的时间复杂度为[531,简单选择排序的时间复杂度为[54],堆排序的时间复杂度为侬1。(31)以下排序技术中属于交换类排序法的有_3,属于插入类排序法的有1571,属于选择类排序法的有」【.简单插入排序n.冒泡排序in.希尔排序IV.堆排序v.快速排序vi.简单选择排序1.1.4历届最新考题与全真试题参考答案(一)历届最新考题参考答案与分析一、选择题(1)A(2)D(3)C(4)A(5)B(6)D(7)C(8)A(9)D(10)B(11)A(12)B(13)A(14)D(15)C(16)A(17)C(18)D(19)D(20)B(21)D(22)C(23)A二、填空题(1)口]顺序(2)[2]ACBDFEHGP(3)[3]63(4)[4]栈(5)[5]线性(6)[6]45(7)[7]空间(8)[8]32(9)[9]存储结构(10)[10J19(11)[11]算法(二)全真试题参考答案一、选择题(1)D(2)B(3)B(4)B(5)D(6)D(7)A(8)D(9)B(10)D(11)A(12)B(13)C(14)D(15)D(16)B(17)D(18)A(19)A(20)A(21)C(22)A(23)B(24)B二、填空题(1)[1]A[2]4[3]E[4]3 (2)[5]13[6]2[7]15或0 (3)[8]5 (4)[9]4,2,3(5)[10JDEBFCA (6)[11](1,1,5,3,2,6,7,3,6.7,9)(7)[12](5,1,3,2,1,6,9,7,3,7,6) (8)[13](1,5,7,3,1,6,9,3,2,7,6)(9)[14]算法的控制结构(10)[15]数据传输(11)[16]确定性(12)[17]有穷性(13)[18]算法(14)[19]算法的控制结构[20]传统流程图[21]N-S结构化流程图[22]算法描述语言(15)[23]顺序[24]选择[25]循环(16)[26]列举法(17)[27]归纳法(18)[28]递推法(19)[29]递归法[30]直接递归[31]间接递归调用(20)[32]减半递推技术(21)[33]回溯法(22)[34]数据元素的集合[352[362上的关系[37]R(23)[38]二元关系(D,R)[39]图殂(24)[40]n-i+l[41]n+l[42]n-I[43]n-l(25)[44]n/2[45]n(36)[46]999(27)[47]非线性[48]层次(28)[49]350(29)[50]5(30)[51]O(n(n-l)/2)[52]O(n(n-l)/2)[53]O(nl.5)[54]O(n(n-l)/2)[55]O(nlog2n)(31)[56]IIV[57]IIII[58]IVVI1.2程序设计基础一、选择题(1)在面向对象方法中,实现信息隐蔽是依靠A)对象的继承B)对象的多态C)对象的封装 D)对象的分类(2)下列叙述中,不符合良好程序设计风格要求的是A)程序的效率第一,清晰第二 B)程序的可读性好C)程序中要有必要的注释 D)输入数据前要有提示信息(3)下面选项中不属于面向对象程序设计特征的是A)继承性B)多态性C)类比性D)封装性(4)下列选项中不符合良好程序设计风格的是A)源程序要文档化 B)数据说明的次序要规范化C)避免滥用got。语句D)模块设计要保证高耦合、高内聚(5)下列选项中不属于结构化程序设计方法的是A)自顶向下B)逐步求精C)模块化D)可复用(6)下列哪一项不是从源程序文档化角度要求考虑的因素?A)符号的命名 B)程序的注释C)视觉组织 D)避免采用复杂的条件语句(7)对建立良好的程序设计风格,下面描述正确的是A)程序应简单、清晰、可读性好B)符号名的命名只要符合语法C)充分考虑程序的执行效率 D)程序的注释可有可无(8)按照结构化程序的设计原则和方法,下列叙述中正确的是A)语言中所没有的控制结构,应该采用前后一致的方法来模拟B)基本结构在程序设计中不允许嵌套 C)在程序中不要使用GOTO语句D)选用的结构只准有一个入口,但可以有多个出口(9)继承性机制使得子类不仅可以重用其父类的数据结构和代码,而且可以在父类代码的基础上方便地修改和扩充,这类个性并不影响对原有类的使用。这体现了面向对象方法的A)使开发出来的软件易于被人理解 B)接近人类的思维习惯C)易于测试和调试 D)可重用性好(10)下列哪一项方法不是说明面向对象的易于修改的特征?A)对象的封装性 B)继承机制C)隐藏机制 D)多态性机制(11)信息隐蔽的概念与下列哪一种概念直接相关?A)软件结构的定义 B)模块的独立性C)模块的分类性 D)模块的内聚程序(12)在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送A)调用语句B)命令C)口令D)消息(13)消息传递中所传递的消息实质上是哪种对象所具有的操作(方法)名称?A)发送对象 B)接受对象C)请求对象D)调用对象(14)下列对消息机制的描述借误的是A)一个对象能接受不同形式、不同内容的多个消息B)相同形式的消息可以送往不同的对象C)不同对象对于形式相同的消息可以有不同的解释,能够做出不同的反应D)一个对象一次只能向一个对象传递消息,但允许多个对象同时向某个对象传递消息(15)同样的消息被不同对象接受时中导致完全不同的行为,这种现象称为A)多态性B)继承性C)重载性D)封装性二、填空题(1)在面向对象方法中_LLL描述的是具有相似属性与操作一组对象。(2)在面向对象方法中,类的实例称为[21。(3)程序设计的方法和技术的发展主要经过了结构程序设计和J3L的程序设计两个阶段。(4)源程序文档化要求程序应该加注释。注释一般分为序言性注释和141。(5)由于软件危机的出现,20世纪70年代人们提出了“坨”的思想和方法。(6)重发结构对应两类循环语句,对先判断后执行循环体的称为161型循环结构,对先执行循环后判断的称为JZL型循环结构。(7)结构化程序设计的三种基本逻辑结构为顺序、选择和⑻。(8)主张从客观世界固有的事物出发来构造系统,提倡用人类的现实生活中常用的思维方法来认识、理解和描述客观事物,强调最终建立的系统能够映射问题域的程序设计方法是_12L。(9)与传统方法以算法为核心不同的是,面向对象方法和技术的以[1心为核心。(10)面向对象方法中有两种方法可以重复使用一个对象类:一种方法是创建该类的JILL;另一种方法是从它派生一个满足当前需要的新类。(11)对对象的抽象形成了1121,它是具有共同属性、共同方法的对象的集合。(12) 是一个实例与另一个实例之间传递的信息,它请求对象执行某一处理或回答某一要求的信息,它统一了数据流和控制流。(13)使用已有的类定义作为基础建立新类的定义技术是1141。2.3全真试题训练一、选择题(1)下面关于形成良好的程序设计风格要注意的因素的描述中正确的是A)程序的注释不是必要的B)数据说明的次序可以根据程序员自己的爱好和风格来定C)在程序中应该尽量使用临时变量来增强程序的可读性D)输入和输出的方式和格式应尽量方便用户的使用(2)结构化的程序设计主要强调的是A)程序的规模 B)程序的易读性 C)程序的执行效率 D)程序的可移植性(3)卜列哪一项不是结构化程序设计的原则?A)自顶向下 B)逐步求精 C)对象化 D)模块化(4)三种基本结构中,哪种结构能够简化大量的程序代码行?A)顺序结构 B)分支结构 C)选择结构 D)重复结构(5)下列关于结构化程序设计原则和方法的使用的描述错误的是A)使用程序设计语言中的顺序、选择、循环等有限的控制结构表示程序的控制逻辑B)对程序设计语言中没有的基本控制结构,可以不局限于用基本结构来实现程序的逻辑C)程序语句组成容易识别的块,每块只有一个入口和一个出口D)严格限制GOTO语句的使用(6)面向对象方法的核心是A)对象B)类C)封装D)继承(7)下面哪一项不是面向对象方法的优点?A)稳定性好B)可重用性好 C)运行效率高 D)可维护性好(8)下面对对象概念描述错误的是A)任何对象都必须有继承性 B)对象是属性和方法的封装体C)对象间的通信靠消息传递 D)操作是对象的动态属性(9)对象的操作过程对外是封闭的不可见的,即用户只能看到一操作实施后的结果。对象的这一特性,即是对象的A)封装性B)继承性C)多态性D)模块性(10)对象间相互协作在面向对象的方法里是通过什么来实现的?A)方法B)属性C)消息D)操作(11)下面哪一项不是消息的组成部分?A)发送消息的对象的名称 B)接受消息的对象的名称C)消息标志符D)零个或多个参数(12)下列举出的哪种技术机制可以使一个类可以共享另一类的数据和方法?A)封装B)继承C)多态D)实例化(13)有一个抽象的画图方法show,它调用传递给它的参数图形对象的draw方法来实现画图功能。图形对象是一个父类对象,图形类下面有子类圆形类、矩形类、多边形类,它们都实现了自己的draw方法。但不管传递给show方法的参数是圆形类,矩形类还是多边形类的对象,show方法都能够画出正确的图形。请问这个过程中运用了面向对象方法的哪种机制?A)继承B)消息C)多态D)封装(14)著名的“清晰第一,效率第二”的论点反映了程序设计的过程中要重视A)程序的设计方法 B)程序的设计思路C)程序的设计风格 D)程序的设计技术(15)卜列关于结构化的程序设计原则的叙述中错误的是A)程序设计应该采取自顶向下的设计原则 B)对复杂问题应该逐步求精地细化求解C)把每一个分解后的子目标组织成模块 D)尽可能地使用GOTO语句,以提高程序运行的效率(16)下列关于继承的描述正确的是A)子类只能通过继承共享父类的方法,而不能通过继承共享父类的属性B)继承具有传递性,一个类可通过继承链继承它的上层的全部基类的特性C)单继承是指父类到子类只能直接传递一次的继承关系D)多继承是指从父类到r类能够传递多次的继承关系二、填空题一般来讲,ILL是指编写程序时所表现出的特点、习惯和逻辑思路。J2L注释通常放在每个程序的开头部分,它给出程序的整个说明。(3)在结构化程序设计中要学会使用程序设计语言中的顺序、 ⑶、循环等有限的控制结构来表示程序的控制逻辑。(4)【4】方法的某本原理是,使用现实世界的概念抽象地思考问题从而自然地解决问题。(5)面向对象方法中,数据以及可以对这些数据施加的所有操作封装在一起的统一体是正L。(6)类是一个支持集成的抽象数据类型,而对象是类的161。(7)在面向对象方法中,信息隐蔽是通过对象的」ZL性来实现的。(8)面向对象的世界是通过对象与对象间相互合作来推动的,对象间的这种相不约而同合作需要一个机制协助进行,这样的机制称为【81。(9)在面向对象方法中,类之间共享属性和操作的机制称为」2L。(10)在面向对象的软件技术中,LWL是指子类对象可以像父类对象那样使用,同样的消息既可以发送给父类对象也可以发送给子类对象。2.4历届最新考题与全真试题参考答案(一)历届最新考题参考答案与分析C(2)A(3)C(4)D(5)D(6)D(7)A(8)A(9)D(10)C(11)B(12)D(13)B(14)D(15)A二、填空题(1)川类(2)⑵对象(3)[3]面向对象(4)[4]功能性注释 (5)[5]结构化程序设计(6)⑹当[7值到 (7)⑻循环(8)[9]面向对象方法(9)[10]对象(10)[11]实例[12]类(12)[13]消息(13)[14]继承(二)全真试题参考答案一、选择题(1)D(2)B(3)C(4)D(5)B(6)A(7)C(8)A(9)A(10)C(11)A(12)B(13)C(14)C(15)D(16)B二、填空题(1)[程序设计风格](2)[2]序言式(3)[3]选择或分支(4)[4]面向对象(5)[5]对象(6)⑹实例(7)⑺封装(8)网消息(9)[9]继承(10)[10]多态性3软件工程基础3.2历届最新考题汇编(1)软件是指A)程序B)程序和文档 C)算法加数据结构D)程序、数据与相关文档的完整集合(2)软件调试的目的是A)发现错误 B)改正错误C)改善软件的性能D)验证软件的正确性(3)在结构化程序设计中,模块划分的原则是A)各模块应包括尽量多的功能 B)各模块的规模应尽量大C)各模块之间的联系应尽量紧密 D)模块内具有高内聚度、模块间具有低耦合度(4)下列叙述中正确的是A)软件测试的主要目的地是发现程序中的错误b)软件测试的主耍n的是确定程序中错误的位置C)为了提高软件测试的效率,最好由程序编制者自己来完成软件测试的工作D)软件测试是证明软件没有错误(5)从工程管理角度,软件设计一般分为两步完成,它们是A)概要设计与详细设计B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计(6)下列选项中不属于软件生命周期开发阶段任务的是A)软件测试 B)概要设计 C)软件维护 D)详细设计(7)两个或两个以上模块之间关联的紧密程序称为A)耦合度 B)内聚度 C)复杂度 D)数据传输特性(8)下列叙述中正确的是A)软件测试应该由程序开发者来完成 B)程序经调试后一般不需要再测试C)软件维护只包括对程序代码的维护 D)以上三种说法都不对(9)下列叙述中正确的是A)程序设计就是编制程序 B)程序经调试后一般不需要再测试C)程序经调试改错后还应进行再测试 D)程序经调试改错后不必进行再测试(10)下列描述中正确的是A)软件工程只是解决软件项目的管理问题 B)软件工程主要解决软件产品的生产率问题C)软件工程的主要思想是强调在软件开发过程中需耍应用工程化原则D)软件工程只是解决软件开发中的技术问题(11)在软件设计中,不属于过程设计工具的是A)PDL(过程设计语言) B)PAD图C)N-S图D)DFD图(12)下列叙述中正确的是A)软件交付使用后还需要进行维护 B)软件一旦交付使用就不需要再进行维护C)软件交付使用后其生命周期就结束 D)软件维护是指修复程序中被破坏的指令(13)下列描述中正确的是A)程序就是软件 B)软件开发不受计算机系统的限制C)软件既是逻辑实体,又是物理实体 D)软件是程序、数据与相关文档的集合(14)下列对于软件测试的描述中正确的是A)软件测试的目的是证明程序是否正确 B)软件测试的目的是使程序运行结果正确C)软件测试的目的是尽可能多地发现程序中的错误 D)软件测试的目的是使程序符合结构化原则(15)为了使模块尽可能独立,要求A)模块的内聚程序要尽量高,且各模块间的耦合程序要尽量强B)模块的内聚程序要尽量高,且各模块间的耦合程度要尽量弱C)模块的内聚程度要尽量低,且各模块间的耦合程序要尽量弱D)模块的内聚程度要尽量低,且各模块间的耦合程序要尽量强(16)在软件生命周期中,能准确地确定软件系统必须做什么和必须具备那些功能的阶段是A)概要设计B)详细设计C)可行性分析 D)需求分析(17)软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书,以及
A)阶段性报告 B)A)阶段性报告 B)需求评审C)总结(18)数据流图用于抽象描述一个软件的逻辑模型,不属于数据流图合法图符的是A)控制流B)加工C)数据存储(19)下列工具为需求分析常用工具的是A)PADB)PFDC)N-SD)DFDD)都不正确数据流图由一些特定的图符构成。下列图符名标识的图符D)源和潭(20)在结构化方法中,软件功能分解属于下列软件开发中哪个阶段?A)详细设计 B)需求分析 C)总体设计 D)编程测试(21)下列几种内聚类型内聚性最强的是A)逻辑内聚 B)时间内聚 C)功能内聚 D)过程内聚(22)经常使用的结构图有四种模块类型,以卜四种图形中哪种表示传出模块?(23)下面哪一项内容不是软件设计包括的?A)软件结构设计B)过程设计C)接口设计D)数据流设计(24)下面对测试和调试的论述错误的是A)调试的任务是修改错误,测试的任务是杳找错误B)调试主要发生在程序的开发阶段,测试贯穿整个软件生命周期C)出现错误的地方很可能还有错误,对程序的测试和调试都是这样D)由于调试的过程已经修正了错误,调试过的地方用不着再测试了二、填空题(1)软件需求规格说明书应具有完整性、无歧义性、正确性、可验证性、可修改性等特性,其中最重要的_LL1(2)在两种基本测试方法中,[2L测试的原因之一是保证所测模块中每一个独立路径至少要执行一次。(3)软件测试分为白箱(盒)测试和黑箱(盒)测试。等价类划分属于131测试。(4)软件生命周期可分为多个阶段,一般分为定义阶段、开发阶段和维护阶段。编码和测试属于」1_阶段。(5)在结构化分析使用的数据流图(DFD)中,利用[51对其中的图形元素进行确切解释。(6)右上图软件系统结构图的宽度为[61。_[2]_的任务是诊断和改正程序中的错误。(8)程序测试分为静态分析和动态测试。其中181是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。(9)在进行模块测试时,要为每个被测试的模块另行设计两类模块:驱动模块和承接模块(桩模块)。其中⑼的作用是将测试数据传送给被测试的模块,并显示被测试模块所产生的结果。(10)诊断和改正程序中错误的工作通常称为【101。全真试题训练一、选择题(1)按选择的功能划分,需求分析工具软件属于A)应用软件 B)系统软件 C)支撑软件 D)专用软件(2)下列哪一项不是软件工程的工程化要求?A)系统化 B)规范化 C)可度量 D)流水线(3)下面软件工程要素中的哪一项提供软件工程项FI的软件开发的各个环节的控制、管理的支持?A)方法B)工具C)过程D)技术(4)软件设计属于软件生命周期的下面的哪一个阶段?A)软件定义B)软件分析C)软件开发D)软件维护(5)在软件生命周期中的哪一阶段能够确定待开发软件系统的开发目标和总的耍求,给出它的功能、性能、可靠性以及接口等方面的可能方案,制定完成开发任务的实施计划A)可行性研究B)需求分析C)概要设计D)详细设计(6)下列哪一项不是软件工程的基本目标?A)付出较低的维护费用B)达到要求的功能C)不管时间限制,只要最终把用户要求的产品交出来D)产品的性能比较好(7)下面哪一项不符合软件工程的原则?A)把程序分解成独立的模块B)采用封装技术把程序模块的实现细节隐藏起来C)采用全局变量传递的方式,以简化模块之间的通信接口和通信量D)程序的内外部接口保持一致,系统规格说明与系统行为保持一致(8)计算机辅助软件工程(CASE)是一个A)软件开发工具B)软件开发环境C)软件开发技术D)软件开发方法jackson方法是一种什么样的结构化分析方法?A)面向数据流B)面向对象C)面向数据结构D)面向控制流(10)下列哪一项不是结构化分析的常用工具?A)控制流图B)数据字典C)数据流图D)判定树(11)对建立数据流图的步骤的叙述不正确的是A)由外向里B)自顶向下C)自底向上D)逐层分解(12)下面对数据流图的构造规则的叙述正确的是A)数据的存储之间可以有数据流B)所有子图中输入、输出数据和父图中相应的处理的输入、输出数据流必须一致C)数据存储在数据流图中至少应该有读或写的一个处理D)在不同的流图中同一个加工处理的编号可能不完全相同(13)下列哪一项不是软件说明书的特点?A)正确性B)无歧义性C)可操作性D)可修改性(14)下面哪一项不是软件设计的基本原理?A)抽象B)完备性C)模块化D)信息隐蔽(15)下列几种耦合中独立性最强的是A)内容耦合B)公共耦合C)数据耦合D)非直接耦合(16)概要设计中要完成的事情是A)系统结构和数据结构的设计B)系统结构和过程的设计C)过程和接口的设计D)数据结构和过程的设计(17)常用的软件结构设计工具是A)程序结构图B)数据流图C)控制流图D)流程图(18)下面关于详细设计的任务的描述正确的是A)为每一个模块确定算法和局部数据结构B)为每一个模块确定功能和接口C)确定模块间的调用关系和接口D)确定模块间的数据流动方式(19)下列哪一个工具不是运用在详细设计阶段的?A)程序结构图B)程序流程图C)PDLD)PAD图(20)软件测试中的白盒和黑盒测试通常属于是A)静态测试B)动态测试C)系统测试D)验证测试(21)对软件已经实现的功能是否满足需求进行测试和验证的方法是A)静态测试B)动态测试C)白盒测试D)黑盒测试(22)下面哪一项不是按实施步骤对软件测试进行划分的?A)单元测试B)静态测试C)确认测试D)系统测试(23)边界值分析法属于哪一类测试的常用方法?A)静态测试B)白盒测试C)黑盒测试D)集成测试(24)原因排除法属于A)软件调试方法B)黑盒测试方法C)白盒测试方法D)动态测试方法(25)下列关于软件的特点的描述正确的是A)软件的生产和硬件一样有明显的制作过程B)软件和硬件一样也有磨损、老化的问题C)软件的开发成本比硬件开发要低廉D)软件的开发、运行对计算机系统具有依赖性(26)下面哪一项不是软件危机的表现?A)软件的质量难以保证B)软件设计的技术水平无法达到用户要求C)软件开发成本不断提高且不可控制D)软件的开发生产率的提高赶不上硬件的发展和需求的增长(27)下面不属于软件工程的三个要素的是A)工具B)过程C)方法D)环境(28)在秀多软件应用中,存在某种作业数据流,它可以引发一个或多个处理,这些处理能够完成该作业要求的功能,这种数据流叫做A)变换型数据流B)事务型数据流C)控制型数据流D)功能型数据流(29)下面不属于软件设计原则的是A)抽象B)模块化C)自底向上D)信息隐蔽(30)程序流程图中的箭头代表的是A)数据流B)控制流C)调用关系D)组成关系(31)下面关于软件测试的准则的描述不正确的是A)所有测试都应追溯的需求B)严格执行测试计划C)测试只能证明程序中有错误,不能证明程序没有错误D)为了提高测试效率,测试应该由程序员来完成(32)根据软件产品的内部工作过程,检查内部成分,以确认每种内部操作符合设计规格的耍求的测试方法是A)静态测试B)动态测试C)白盒测试D)黑盒测试(33)检查软件产品是否符合需求定义的过程是A)单元测试B)集成测试C)确认测试D)系统测试二、填空题(1)软件产品从提出、实现、使用维护到停止使用退役的过程称为皿。(2)软件开发环境是全面支持软件开发全过程的集合。(3)也是应用于计算机定义、开发和维护的一整套方法、工具、文档、实践标准和工序.(4)软件生命周期分为软件定义、软件开发及软件」由三个阶段。(5)软件工程研究的主要内容包括:151和软件工程管理。(6) [61是指用户对H标软件系统在功能、行为、性能、设计约束等方面的期望。(7)软件工程的核心思想是把软件产品当作一个」2]_产品来处理。(8)把输入转化为输出的一组相关的资源和活力是181。(9)在软件生命周期的191阶段,软件的结构、模块的划分、功能的分配以及处理流程应该给出。(10)在软件工程的理论和技术性研究的内容包括软件开发技术和(11)ULL是软件按工程化生产时的重要环节,它要求按照预先制定的计划、进度和预算执行,以实现预期的经济效益和社会效益。(12)全面支持软件开发过程的软件工具集合被称为」121。(13)发现用户需求、求精、建模和定义用户需求的过程是「131。(14)结构化分析方法的实质是着眼于数据流,自顶向下,逐层分解,建立系统的处理流程,以"41和数据字典为主要工具,建立系统的逻辑模型。L1^L是时所有与系统相关的数据元素的一个有组织的列表,以及精确、严格的定义,使得用户和系统分析员对于输入、输出、存储成分和中间计算结果有共同的理解。661是需求分析阶段的最后成果,是软件开发中的重要文档之一。(17)在数据流图中用C波示J1ZL、用f示“81、用——表示“91用\|[2010在数据字典中用表示[21]、用+表示【221、用**表示1231。在结构图中用表示「241表示1251, ^Q[26L. O—► ►(18)模块的独立性的两个定性标准是1271性和耦合性。(19)软件系统结构和数据结构及数据库的设计是在1281设计中完成的。(20)为每一个模块确定实现算法和局部数据结构是」22L阶段的任务。(21)软件测试按是否需要执行被测试软件的角良可分为1301和动态测试。[311测试方法也称为功能测试或数据驱动测试,它是对软件已经实现的功能是否满足需要进行测试和验证。1321是将通过测试确认的软件作为整个为到计算机系统的一个元素,与计算机硬件、外设、支持软件、数据和人员等其他系统元素组合在一起,在实际运行环境中对计算机系统进行一系列的集成和确认测试。(24)软件测试将贯穿整个1331,调试则主要集中在开发阶段。(25)把软件需求转变为软件表示的过程是1341,它确定了系统的物理模型。1.3.4历届最新考题与全真试题参考答案(一)历届最新考题参考答案与分析(1)D(2)B(3)D(4)A(5)A(6)C(7)A(8)D(9)C(10)C(11)D(12)A(13)D(14)C(15)B(16)D(17)B(18)A(19)D(20)C(21)C(22)B(23)D(24)D二、填空题(1)口]无歧义性(2)⑵白盒测试(3)[3]黑箱(盒)(4)[4]开发(5)⑶数据字典(6)[6]3(7)[7]调试(8)[8]静态分析(9)[9)驱动模块(10)[10]软件调试(二)全真试题参考答案一、选择题TOC\o"1-5"\h\z(1)C(2)D (3)C(4)C (5)A(6)C (7)C (8)B (9) C (10)A (11)C(12)B(13) C(14)B(15) D(16)A(17) A(18) A(19)A 20) B (21)D (22)B(23)C(24) A(25)D(26) B(27)D(28)B (29)C (30)B (31) D (32)C (33)C二、填空题(1)[1]软件生命周期 (2)⑵软件开发工具 (3)[3]软件工程 (4)[4]维护(5)[5]软件工程技术 (6)网软件需求(7)[7]工程 (8)[8]软件工程过程(9)[9]软件设计(10)[10]软件工程管理(11)[11]软件工程管理(12)[12]软件开发环境(13)[13]需求分析(14)[14]数据流图(15)[15]数据字典(16)[16]软件需求规格说明书(17)[17]加工(18)[网数据流(19)[19]存储文件(或数据源)(20)[20]源(或潭)[21]或[22]与[23]注释[24]模块[25]数据信息[26]控制信息(18)[27]内聚(19)28概要(20)[20]详细设计(21)[30]静态测试(22)[31]黑盒测试(23)[32]系统测试(24)[33]软件生命周期(25)[34]软件设计4数据库设计基础4.2历届最新考题汇编一、选择题(1)5列叙述中正确的是A)数据库系统是一个独立的系统,不需要操作系统的支持B)数据库技术的根本H标是要解决数据的共享问题C)数据库管理系统就是数据库系统D)以上三种说法都不对(2)下
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 水产小龙虾技术培训课件
- 儿童画植物写生课件
- 契税法培训课件
- 保洁外包培训课件文档
- 农村环境整治与生态保护项目合同
- 人教版政治建设美丽中国课
- 哈尔滨香坊区23年秋季数学试卷
- 2026版《全品高考》选考复习方案生物03 第三单元 细胞的能量供应和利用09 第10讲 第3课时 光合作用与细胞呼吸的综合分析含答案
- 精神病人福利院建设项目初步设计(模板)
- 大中小学生体质强健的策略及实施路径
- 脑卒中溶栓护理课件
- 2025年城建技师考试题库及答案
- 2025年中国LTCC技术行业市场现状、前景分析研究报告(智研咨询发布)
- 租赁住房培训课件下载
- 房管员试题资料
- 2025至2030中国扭蛋机行业市场发展现状及商业模式与投融资战略报告
- 2024年苏州昆山国创投资集团有限公司招聘笔试真题
- 商场吸烟区管理制度
- 2025年四川省成都市中考地理真题(原卷版)
- 糖尿病足截肢术后护理
- 广东省东莞市2022-2023学年高二下学期期末物理试题(含答案)
评论
0/150
提交评论