《2023年C语言公共基础知识.pdf》由会员分享,可在线阅读,更多相关《2023年C语言公共基础知识.pdf(35页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、第一部分公共基础部分知识归纳数据结构与算法算法-是一组严谨地定义运算顺序的规则算法的基本要素-一是对数据对象的运算和操作,二是算法的 控制结构算法设计基本方法-列举法、归纳法、递推、递归、减半递推算法的复杂度-包括时间复杂度和空间复杂度时间复杂度-执行算法所需的计算工作量空间复杂度-执行算法所需的内存空间数据结构-相互有关联的数据元素的集合。如春、夏、秋、冬;18、11、35、23、16。;父亲、儿子、女儿等都是数据元素。前件-数据元素之间的关系,如父亲是儿子和女儿的前件后件-如儿子是父亲的后件结构-指数据元素之间的前后件关系数据的逻辑结构是指反映数据元素之间逻辑关系,而与它们在计算机中的存储
2、位置无关数据的存储结构(物理结构)-数据的逻辑结构在计算机存储空间中的存放形式,数据元素在计算机存储空间的位置关系可能与逻辑关系不同。根据数据结构中各数据元素之间前后件关系的复杂程度,可将数据结构分两类-线性结构与非线性结构线性结构(线性表)-满足下列两个条件(1)有且只有一个根结点(2)每一个结点最多有一个前件和后件。则称该数据结构为线性结构,否则为非线性结构。线性表是最简单、最常用的一种数据结构,其数据元素之间的相对位置是线性的,其存储方式为顺序存储的,如数组栈-是限定在一端进行插入与删除的线性表,一端封闭,另一端开口,其操作原则是“先进后出”,栈的运算有入栈、退栈、读栈顶元素队列-是指在
3、一端进行插入(称为队尾)而在另一端进行删除(称为队头)的线性表,其操作规则是“先进先出”,其运算有入队和退队。树-是一种简单的非线性结构,而且是层次结构,是倒立的大树,有根结点、父结点、子结点、叶子结点。根结点在第一层,一个结点所拥有的后件的个数称为该结点的度,所有结点中最大的度称为树的度,树的最大层次称为树的深度。二叉树-(1)非空二叉树只有一个根结点(2)每一个结点最多有两棵子树(左子树和右子树),其存储结构为链式。二叉树性质-(1)K 层上最多有2(K-1)个结点(2)深度为 m 的二叉树最多有2m-1 个结点(3)度为 0 的结点(叶子结点)比度为2 的结点多一个(4)具有 n 个结点
4、的二叉树,其深度至少为 Log2n+1,其中 Log2n表示对 Log2n 取整满二叉树-除最后一层外,其余层的结点都有两个子结点完全二叉树-除最后一层外,每一层上的结点数均达到最大值,在最后一层上只缺少右边的若干结点,叶子结点只可能在层次最大的两层上出现。满二叉树是完全二叉树,而完全二叉树不是满二叉树。完全二叉树有两个性质:(1)具有 n 个结点的完全二叉树的深度为 Log2n+1(2)二叉树遍历-不重复地访问各个结点。分为前序遍历(DLR-根左右)、中序遍历(LDR-左根右)和后序遍历(LRD-左右根)查找技术-顺序查找对于长度为n 的有序线性表,查找时需要比较n 次二分法查找对于长度为n
5、 的有序线性表,查找时需要比较log2n 次排序技术-假设线性表的长度为n,则 冒泡排序和简单插入排序的比较次数(时间复杂度)为 n(n-1)/2;希尔排序的比较次数为O(n1.5);简单选择排序 的比较次数为n(n-1)/2;堆排序 的比较次数为O(nlog2n).习题 1 算法的时间复杂度是指(),算法的空间复杂度是指();线性表、栈、队列、线性链表是(线性结构),树是(非线性结构);数据的存储结构是指();队列是(先进先出),栈是(先进后出);下列二叉树的遍历结果:前序遍历(ABDECF)、中序遍历(DBEAFC)、后续遍历(DEBFCA)在深度为5 的满二叉树中,叶子结点的个数为(16
6、);设树T 的度为 4,其中度为1,2,3,4 的结点的个数分别为4,2,1,1。则 T 中的叶子结点的个数为(8);对于长度为 n 的有序线性表,顺序查找次数为(n),二分法查找次数为(log2n);一棵完全二叉树共有700 个结点,则在该二叉树中有(350)个叶子结点;一棵二叉树的中序遍历结果为DBEAFC,前序遍历结果为ABDECF,则后续遍历结果为(DEBFCA);冒泡排序的时间复杂度为(n(n-1)/2);在一个容量为15 的循环队列中,若头指针front=6,尾指针 rear=9,则该循环队列中共有(3)元素;程序设计基础结构化程序设计的三种结构-是顺序、选择和循环对象-表示客观世
7、界的任何实体类-是具有共同属性和方法的对象的集合实例-任何一个对象都是其对应类的实例消息-一个实例和另一个实例之间传递的信息继承-是指直接获得已有的性质和特征,而不必重复定义它们。例如子类继承父类结构化程序设计主要强调-程序的易读性良好的程序设计风格是-程序应简单、清晰、可读性好在面向对象方法中,一个对象请求另一个对象为其服务的方式是通过发送(消息)来实现的信息隐蔽的概念与(模块独立性)概念直接相关(任何对象都具有继承性)这句话是错误的注释分为(序言性注释)和(功能性注释)在面向对象方法中,信息隐蔽是通过对象的(封装性)来实现的类是一个支持集成的抽象数据类型,而对象是类的(实例)在面向对象方法
8、中,类之间共享属性和操作的机制称为(继承)第三章软件工程基础软件生命周期-软件产品从提出、实现、使用维护到停止使用退役的过程。分为软件定义、软件开发、软件运行维护三个阶段。软件生命周期的主要活动阶段-可行性分析、需求分析、软件设计、软件实现、软件测试、运行和维护。常见的需求分析方法-(1)结构化分析方法-主要包括面向数据流的结构化分析方法SA;面向数据结构的Jackson方法 JSD;面向数据结构的结构化数据系统开发方法DSSD。(2)面向对象的分析方法OOA 结构化分析方法工具-(1)数据流图DFD,记住 DFD 图的几个符号:(2)数据字典DD(3)判定树(4)判定表程序结构图(SC),N
9、-S 图,问题分析图(PAD)程序流程图(PFD)的几个符号:软件测试-黑盒测试:功能测试白盒测试:内部结构测试,穷举路径测试习题 3 在软件生命周期中,能准确地判断软件系统必须做什么和必须具备哪些功能的阶段是(需求分析)软件工程的3 个要素(工具),(过程),(方法)检查软件产品是否符合需求定义的过程称为(确认测试)软件设计原则是(抽象)、(模块化)、(信息隐蔽)需求分析常用的工具是(DFD)在结构化方法中,软件功能分解属于(总体设计)阶段软件测试的目的是(改正错误)软件需求分析阶段可分为四个方面(需求获取)、(需求分析)、(编写需求格式说明)、(需求评审)软件是(程序)、(数据)、(文档)
10、的集合Jakson方法是一中面向(数据流)的结构化方法软件工程研究的内容包括(软件开发技术)、(软件工程管理)数据流图的类型有(交换型)、(事务型)软件开发环境是全面支持软件开发全过程的(软件工具)集合第四章数据库设计基础数据库-DB;数据库管理系统-DBMS;数据库管理员-DBA;数据库系统-DBS;数据库应用系统-DBAS 数据模型所描述的内容分三个部分(数据结构)、(数据操作)、(数据约束)逻辑数据模型分(层次模型)、(网状模型)、(关系模型)、(面向对象模型)E-R模型-实体关系模型,主要由实体、属性、联系组成,联系分:1 对 1,1 对多,多对多;以二维表为基本结构所建立的模型称为关
11、系模型,关系模型采用二维表来表示,简称表,由行和列组成,行称为元组或记录,列称为字段主键-唯一标识一个记录的字段外键-一个表的字段是其他表的主键在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段、数据库系统阶段,其中数据独立性最高的阶段是(数据库系统)数据库系统减少了(数据冗余);数据库系统的核心是(数据库管理系统)用树型结构来表示实体间联系的模型称为(层次模型)关系表中的每一行称为(元组)关系数据库管理系统能实现的专门关系运算包括(选择)、(投影)、(连接)在关系数据库中,用来表示实体之间联系的是(二维表)数据库设计包括两方面的设计内容(概念设计)、(逻辑设计)将 E-R图转换到关
12、系模式时,实体与联系都可以表示成(关系)一个项目具有一个项目主管,一个项目主管可以管理多个项目,则实体“项目主管”与“项目”的联系属于(一对多)数据独立性分为逻辑独立性和物理独立性,当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为(逻辑独立性)数据库系统中实现各种数据管理功能的核心软件称为(数据库管理系统DBMS)关系模型的完整性规则是对关系的某种约束条件,包括实体完整性、(参照完整性)和自定义完整性第四章 数据库设计基础41 数据库系统的基本概念数据:实际上就是描述事物的符号记录。数据的特点:有一定的结构,有型与值之分,如整型、实型、字符型等。而数据的值
13、给出了符合定型的值,如整型值15。数据库:是数据的集合,具有统一的结构形式并存放于统一的存储介质内,是多种应用数据的集成,并可被各个应用程序共享。数据库存放数据是按数据所提供的数据模式存放的,具有集成与共享的特点。数据库管理系统:一种系统软件,负责数据库中的数据组织、数据操纵、数据维护、控制及保护和数据服务等,是数据库的核心。数据库管理系统功能:(1)数据模式定义:即为数据库构建其数据框架;(2)数据存取的物理构建:为数据模式的物理存取与构建提供有效的存取方法与手段;(3)数据操纵:为用户使用数据库的数据提供方便,如查询、插入、修改、删除等以及简单的算术运算及统计;(4)数据的完整性、安生性定
14、义与检查;(5)数据库的并发控制与故障恢复;(6)数据的服务:如拷贝、转存、重组、性能监测、分析等。为完成以上六个功能,数据库管理系统提供以下的数据语言:(1)数据定义语言:负责数据的模式定义与数据的物理存取构建;(2)数据操纵语言:负责数据的操纵,如查询与增、删、改等;(3)数据控制语言:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等。数据语言按其使用方式具有两种结构形式:交互式命令(又称自含型或自主型语言)宿主型语言(一般可嵌入某些宿主语言中)。数据库管理员:对数据库进行规划、设计、维护、监视等的专业管理人员。数据库系统:由数据库(数据)、数据库管理系统(软件)、数据库管理员(
15、人员)、硬件平台(硬件)、软件平台(软件)五个部分构成的运行实体。数据库应用系统:由数据库系统、应用软件及应用界面三者组成。文件系统阶段:提供了简单的数据共享与数据管理能力,但是它无法提供完整的、统一的、管理和数据共享的能力。层次数据库与网状数据库系统阶段:为统一与共享数据提供了有力支撑。关系数据库系统阶段数据库系统的基本特点:数据的集成性、数据的高共享性与低冗余性、数据独立性(物理独立性与逻辑独立性)、数据统一管理与控制。数据库系统的三级模式:(1)概念模式:数据库系统中全局数据逻辑结构的描述,全体用户公共数据视图;(2)外模式:也称子模式与用户模式。是用户的数据视图,也就是用户所见到的数据
16、模式;(3)内模式:又称物理模式,它给出了数据库物理存储结构与物理存取方法。数据库系统的两级映射:(1)概念模式到内模式的映射;(2)外模式到概念模式的映射。4.2 数据模型数据模型的概念:是数据特征的抽象,从抽象层次上描述了系统的静态特征、动态行为和约束条件,为数据库系统的信息表与操作提供一个抽象的框架。描述了数据结构、数据操作及数据约束。E-R模型的基本概念(1)实体:现实世界中的事物;(2)属性:事物的特性;(3)联系:现实世界中事物间的关系。实体集的关系有一对一、一对多、多对多的联系。E-R模型三个基本概念之间的联接关系:实体是概念世界中的基本单位,属性有属性域,每个实体可取属性域内的
17、值。一个实体的所有属性值叫元组。E-R模型的图示法:(1)实体集表示法;(2)属性表法;(3)联系表示法。层次模型的基本结构是树形结构,具有以下特点:(1)每棵树有且仅有一个无双亲结点,称为根;(2)树中除根外所有结点有且仅有一个双亲。从图论上看,网状模型是一个不加任何条件限制的无向图。关系模型采用二维表来表示,简称表,由表框架及表的元组组成。一个二维表就是一个关系。在二维表中凡能唯一标识元组的最小属性称为键或码。从所有侯选健中选取一个作为用户使用的键称主键。表A 中的某属性是某表B 的键,则称该属性集为A 的外键或外码。关系中的数据约束:(1)实体完整性约束:约束关系的主键中属性值不能为空值
18、;(2)参照完全性约束:是关系之间的基本约束;(3)用户定义的完整性约束:它反映了具体应用中数据的语义要求。4.3 关系代数关系数据库系统的特点之一是它建立在数据理论的基础之上,有很多数据理论可以表示关系模型的数据操作,其中最为著名的是关系代数与关系演算。关系模型的基本运算:(1)插入(2)删除 (3)修改(4)查询(包括投影、选择、笛卡尔积运算)4.4 数据库设计与管理数据库设计是数据应用的核心。数据库设计的两种方法:(1)面向数据:以信息需求为主,兼顾处理需求;(2)面向过程:以处理需求为主,兼顾信息需求。数据库的生命周期:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、
19、测试阶段、运行阶段、进一步修改阶段。需求分析常用结构析方法和面向对象的方法。结构化分析(简称SA)方法用自顶向下、逐层分解的方式分析系统。用数据流图表达数据和处理过程的关系。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。数据字典是各类数据描述的集合,包括5 个部分:数据项、数据结构、数据流(可以是数据项,也可以是数据结构)、数据存储、处理过程。数据库概念设计的目的是分析数据内在语义关系。设计的方法有两种(1)集中式模式设计法(适用于小型或并不复杂的单位或部门);(2)视图集成设计法。设计方法:E-R模型与视图集成。视图设计一般有三种设计次序:自顶向下、由底向上、由内
20、向外。视图集成的几种冲突:命名冲突、概念冲突、域冲突、约束冲突。关系视图设计:关系视图的设计又称外模式设计。关系视图的主要作用:(1)提供数据逻辑独立性;(2)能适应用户对数据的不同需求;(3)有一定数据保密功能。数据库的物理设计主要目标是对数据内部物理结构作调整并选择合理的存取路径,以提高数据库访问速度有效利用存储空间。一般RDBMS 中留给用户参与物理设计的内容大致有索引设计、集成簇设计和分区设计。数据库管理的内容:(1)数据库的建立;(2)数据库的调整;(3)数据库的重组;(4)数据库安全性与完整性控制;(5)数据库的故障恢复;(6)数据库监控。下面是公共基础部分可以变化的题:1 一棵二
21、叉树,第 K 层上最多有 2(k-1)个结点,深度为 K 的二叉树最多有2k-1 个结点,如果是满二叉树呢?例如:在深度为 5 的满二叉树中,叶子结点的个数为(=2(5-1)=16)2 一棵二叉树共有70 个叶子结点和80 个度为 1 的结点,问这个二叉树的总结点是多少?答:因为度为 0 的结点(叶子结点)比度为2 的结点多一个,所以度为 2 的结点数是69,所以总结点=70+69+80=219个3 一棵完全二叉树共有700 个结点,则在该二叉树中有(350)个叶子结点解答:700/2=350 若把 700 改为 675 呢?(=675/2=337.5进行四舍五入=338)4 设树 T 的度为
22、 4,其中度为1,2,3,4 的结点的个数分别为4,2,1,1。则 T 中的叶子结点的个数为(8)解答:n0=(t-1)nt+(t-2)n(t-1)+.+1*n2+0*n1+1=3*1+2*1+1*2+0*4+1=8 5 在一个容量为15 的循环队列中,若头指针front=6,尾指针 rear=9,则该循环队列中共有多少个元素?(3 个)解答:若头 尾,元素个数=15+(尾-头)6 设有则 R 和 S 能进行交集(RnS)、并集(RuS)、差操作(R-S)如果 R 和 S 的元不同的话,则R 和 S 只能进行笛卡尔集(RXS)和自然连接7 关于二叉树遍历问题:有两个题型,一是给出二叉树,求三种
23、遍历结果;二是给出两种遍历,求第三种遍历结果。后者有点难度三种遍历是:前序(根左右)、中序(左根右)和后序(左右根)8 关于查找和排序问题:查找技术-顺序查找对于长度为n 的有序线性表,查找时需要比较n 次二分法查找对于长度为n 的有序线性表,查找时需要比较log2n 次排序技术-假设线性表的长度为n,则冒泡排序和简单插入排序的比较次数(时间复杂度)为 n(n-1)/2;希尔排序的比较次数为O(n1.5);简单选择排序的比较次数为n(n-1)/2;堆排序的比较次数为O(nlog2n).9 关于出栈的问题:记住是先进后出例 1:栈底到顶依次存放A、B、C、D,在第五个元素E 入栈前,栈中元素可以
24、出栈,则出栈可能的序列是ABCED DCBEA DBCEA CDABE 例 2:如果进栈序列为e1,e2,e3,e4,则可能的出栈序列为:e3,e1,e4,e2 e2,e4,e3,e1 e3,e4,e1,e2 任意顺序10 关于 E-R图是实体属性和实体关系图,实体之间的关系有1:11:mm:n 第二部分全国计算机等级考试二级公共考试训练模拟试题一一选择题(每小题2 分)在下列各题的A),B),C),D),4 个选项中,只有1 个选项是正确选项添涂在答题卡相应位置上,答在试卷上不得分。1栈和队列的共同特点是(C)。A)都是先进先出B)都是先进后出C)只允许在端点处插入和删除元素C)没有共同点2
25、已知二叉树后序编历序列是dabec,中续遍历序列是debac,它的前序编历序列是(D)。A)acbedB)decabC)deabcD)cebda3 3链表不具有的特点是(B)。A)不必事先估计存储空间B)可随机访问任一元素C)插入删除不需要的移动元素D)所需空间与线性长度4结构化程序设计的3 种结构是(D)。A)顺序结构、选择结构、转移结构B)分支结构、等价结构、循环结构C)多分支结构、赋值机构、等价结构D)顺序结构、选择结构、循环结构5为了提高测试的效率。应该(D)A)随即选取测试数据B)取一切可能的输入数据作为测试数据C)在完成编码以后指定软件的测试次数D)集中对付那些错误的群集的程序6算
26、法的时间复杂度是指(C)A)执行算法程序所需要的时间 B)算法程序的长度C)在完成编码以后指定软件的测试次数 D)算法程序中的指定条数7软件生命周期中花费用最多的阶段是(D)A)详细设计B)软件编码C)软件测试D)软件维护8数据库管理系统DBMS 中用来定义模拟、内模式和外模式的语言为(C)A)C B)Basic C)DDL D)DML 9下列有关数据库的描述,正确的是(C)A)数据库是一个DBF 文件 B)数据库是一个关系C)数据库是一个结构化的数据集合D)数据库是一组文件10 下列有关数据库的描述,正确的是(D)A)数据处理是将信息转化为数据的过程B)数据的物理独立性是指当数据的逻辑结构改
27、变时,数据的存储结构不变C)关系中的每一列称为元组,一个元组就是一个字节D)如果一个关系中的属性或属性组并非该关系的关键字,但它是另一个关系的键字,则称其为本关系的外关键字二、填空题(每空2 分)请将每一个空的正确答案写在答题卡【11】【15】序号的横线上,答案试卷上不得分。1 算法的基本特征是可行性、确定性、【有穷性】。在长度为 n 的有序线性表中进行二分查找。最坏的情况下,需要的比较次数为【log2n】。在面向对象的程序设计中。类描述的是具有相似性质的一组【对象】。通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为【软件生命周期】。数据库管理系统常见的数据模型有层次模型、网状模
28、型和【关系模型】3 种。模拟测试二一.选择题(每小题 2 分)在下列各题的A),B),C),D),4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上不得分.1.已知一棵二叉树前序遍历和中序遍历分别为ABDEGCFH 和 DBGEACHF,则该二叉树的后序遍历为(B)A)GEDHFBCAB)DGEBHFCAC)ABCDEFGHD)ACBFEDHG 2.树是结点的集合,它的根结点的数目是(A)A)有且只有 1 个 B)1 或多于 1C)0 或 1D)至少 2 3.如果进栈序列为e1,e2,e3,e4,则可能的出栈序列是(B)A)e3,e1,e4,e2B)e2,e
29、4,e3,e1C)e3,e4,e1,e2D)任意顺序4.在设计程序时,应采纳的原则之一是(D)A)不限制 goto语句的使用 B)减少或取消注解行C)程序越短越好D)程序结构应有助于读者理解5.程序设计语言的基本成分是数据成分,运算成分,控制成分和(D)A)对象成分 B)变量成分 C)语句成分 D)传输成分6.下列叙述中,不属于软件需求规格说明书的作用的是(D)便于用户,开发人员进行理解和交流反映出用户问题的结构,可以作为软件开发工作的基础和依据作为确认测试和验收的依据便于开发人员进行需求分析7.下列不属于软件工程3 个要素的是(D)A)工具 B)过程 C)方法 D)环境8.单个用户使用的数据
30、视图描述称为(A)A)外模式 B)概念模式 C)内模式 D)储存模式9.将 E-R图转换到关系模式时,实体与联系都可以表示成(B)A)属性 B)关系 C)键 D)域10.SQL 语言又称为(C)A)结构化定义语言B)结构化控制语言C)结构化查询语言D)结构化操纵语言二.填空题(每空 2 分)请将每一个空的正确答案写在答题卡1115序号的横线上,答在试卷上不得分.1.数据结构分为逻辑结构与储存结构,线性链表属于 存储结构.2.在面向对象方法中,类之间共享属性和操作的机制称为继承.3.耦合和内聚是评价模块独立性的两个主要标准,其中内聚反映了模块内个成分之间的联系.4.一个项目具有一个项目主管,一个
31、项目主管可管理多个项目,则实体“项目主管”与实体“项目”的联系属于一对多 的联系5.数据库设计分为以下6 个设计阶段:需求分析阶段 数据库概念设计阶段逻辑设计阶段物理设计阶段实施阶段运行和维护阶段.模拟测试三选择题(每小题 2 分)在下列各题的A),B),C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡的相应位置上,答在试卷上不得分.1.算法的空间复杂度是指(D))算法程序的长度)算法程序中的指令条数)算法程序所占的存储空间)执行过程中所需要的存储空间.用链表示线性表的优点是(C)便于随机存取)花费的存储空间较顺序储存少)便于插入和删除操作)数据元素的物理顺序与逻辑顺序
32、相同.数据结构中,与所使用的计算机无关的是数据的(C)存储结构)物理结构)逻辑结构)物理和存储结构.结构化程序设计主要强调的是(D)程序的规模)程序的效率)程序设计语言的先进性)程序易读性.软件设计包括软件的结构数据接口和过程设计,其中软件的过程设计是指(B)模块间的关系)系统结构部件转换成软件的过程描述)软件层次结构)软件开发过程.检查软件产品是否符合需求定义的过程称为(A)确认测试)集成测试)验证测试)验收测试.数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符组成下列图符名称标识的图符不属于数据流图合法图符的是(A)控制流)加工)数据存储)源和潭.应用数据库的主要目的是(C
33、)解决数据保密问题)解决数据完整性问题)解决数据共享问题)解决数据量大的问题.在数据库设计中,将E-R图转换成关系数据模型的过程属于(B)需求分析阶段)逻辑设计阶段)概念设计阶段)物理设计阶段10.在数据管理技术的发展过程中,经历了人工管理阶段文件系统阶段和数据库系统阶段其中数据独立性最高的阶段是(A)数据库系统)文件系统)人工管理)数据项管理填空题(每空分)请将每一个空的正确答案写在答题卡1115序号的横线上,答在试卷上不得分.1.数据的逻辑结构有线性结构和非线性结构 两大类.2.顺序储方法是把逻辑上相邻的结点存储在物理位置和相临 的存储单元中.3.一个类可以从直接或间接的祖先中继承所有属性
34、和方法.采用这个方法提高了软件的可重用性.4.软件工程研究的内容主要包括:软件开发 技术和软件工程管理.5.关系操作的特点是逻辑数据模型 操作.模拟测试四选择题(每小题 2 分)在下列各题的A),B),C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡的相应位置上,答在试卷上不得分.1.在深度为 5 的满二叉树中,叶子结点的个数为(B)A)32B)31C)16D)15 2.若某二叉树的前序遍历是abdgcefh,中序遍历是dgbaechf,后序遍历的结点访问顺序是(D)A)bdgcefhaB)gdbecfhaC)bdgaechfD)gdbehfca 3.一些重要的程序语言
35、(如语言和Pascal 语言)允许过程的递归应用而实现递归调用中的储存分配通常用(A)A)栈 B)堆 C)数组 D)链表4.软件工程的理论和技术性研究的内容主要包括软件开发技术和(B)A)消除软件危机B)软件工程管理C)程序设计自动化D)实现软件可重用5.开发软件时对提高开发人员工作效率至关重要的是(B)A)操作系统的资源管理功能B)先进的软件开发工具而后环境C)程序人员的数量D)计算机的并行处理能力6.在软件测试设计中,软件测试是主目的是(D)A)实验性运行软件B)证明软件正确C)找出软件中全部错误D)发现软件错误而执行程序7.数据处理的最小单位是(C)A)数据 B)数据元素 C)数据项 D
36、)数据结构8.索引属于(B)A)模式 B)内模式 C)外模式 D)概念模式9.下述关于数据库系统的叙述中正确的是(B)数据库系统减少了数据冗余数据库系统避免了一切冗余数据库系统中的一致性是指数据类型一致数据库系统比文件系统管理更多的数据10.数据库系统的核心是(B)A)数据库 B)数据库管理系统C)模拟模型D)软件工程二填空题(每空 2 分)请将每一个空的正确答案写在答题卡11 15 序号的横线上,答在试卷上不得分.1.树形结构中,树根结点没有 前件.2.Jackson结构化程序设计方法是英国的M.Jackson提出的,它是一种面向 12 的设计方法.3.面向对象的模型中,最基本的概念是对象和
37、数据结构.4.软件设计模块化的目的是类.5.数据模型按不同应用层次分成3 种类型,它们是概念数据模型降低副杂性 和物理数据模型.模拟测试五一选择题(每小题 2 分)在下列各题的A),B),C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡的相应位置上,答在试卷上不得分.1.数据结构作为计算机的一门学科,主要研究数据的逻辑结构对各种数据结构进行的运算以及(A)A)数据的存储结构B)计算方法 C)数据映象 D)逻辑存储2.串的长度是(D)A)串中不同字符的个数B)串中不同字母的个数C)串中所含字符的个数且字符个数大于零D)串中所含字符的个数3.在计算机中,算法是指(B)A)加
38、工方法 B)解题方案的准确而完整的描述C)排序方法 D)查询方法4.以下不属于对象的基本特征的是(C)A)分类性 B)多态性 C)继承性 D)封装性5.开发软件所需高成本和产品的低质量之间有着尖锐的矛盾,这种现象称作(B)A)软件投机 B)软件危机 C)软件工程 D)软件产生6.下面不属于软件设计原则的是(C)A)抽象 B)模块化 C)自底向上 D)信息隐蔽7.开发大型软件时,产生困难的根本原因是(A)A)大系统的复杂性C)人员知识不足C)客观世界千边万化D)时间紧任务重8 下列 QSL 语句中,用于修改表结构的是(A)A)ALTERB)CREATEC)UPDATED)INSERT 9.数据库
39、数据库系统和数据库管理之间的关系是(B)数据库包括数据库系统和数据库管理系统数据库系统包括数据库和数据库管理系统数据库管理系统包括数据库和数据库系统三者没有明显的包含关系10.关系模型允许定义3 类数据约束,下列不属于数据约束的是(C)A)实体完整性的约束B)参照完整性的约束C)域完整性的约束D)用户自定义的完整性约束二填空题(每空 2 分)请将每一个空的正确答案写在答题卡11 15 序号的横线上,答在试卷上不得分.长度为 n 的顺序存储在线性表中,当在任何位置上插上一个元素概率都相等时,插入一个元素所需移动元素的平均个数为n/2.用树型结构表示实体类型及实体间联系的数据模型称为层次模型.类是
40、一个支持集成的抽象数据类型,而对象是类的 实例.数据流图的类型有14 和事务型.当数据的物理结构(存储结构存取方式等)改变时,不影响数据库的逻辑结构,从而不致引起应用程序的变化,这是指数据的 变换行.模拟测试六一.选择题(每小题 2 分)在下列各题的A),B)C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上不得分.1.假设线性表的长度为n,则在最坏的情况下,冒泡排序需要的比较次数为(D)log2n 2.算法分析的目的是(D)A)找出数据结构的合理性B)找出算法中输入和输出之间的关系C)分析算法的易懂性和可靠性D)分析算法的效率以求改进3.线性表
41、L=(a),下列说法正确的是(D)每个元素都有一个直接前件和直接后件线性表中至少要有一个元素表中诸元素的排列顺序必须是由小到大或由大到小除第一个元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件4.在单链表中,增加头结点的目的是(A)A)方便运算的实现B)使单链表至少有一个结点C)标识表中首结点的位置D)说明单链表是线性表的链式存储实现5.软件工程的出现是由于(C)A)程序设计方法学的影响B)软件产业化的需要C)软件危机的出现D)计算机的发展6.软件开发离不开系统环境的支持,其中必要的测试数据属于(D)A)硬件资源 B)通信资源 C)支持软件 D)辅助资源7.在数据流图中,
42、带有名字的箭头表示(D)A)模块之间的调用关系B)程序的组成成分C)控制程序的执行顺序D)数据的流向8.分布式数据库系统不具有的特点是(D)A)数据分布性和逻辑整体性B)位置透明性和复制透明性C)分布性 D)数据冗余9.关系表中的每一横行称为一个(A)A)元组 B)字段 C)属性 D)码10.下列数据模型中,具有坚实理论基础的是(C)A)层次模型 B)网状模型 C)关系模型 D)以上三个都是二.填空题(每空 2 分)请将每一空的正确答案写在答题卡11 15 序号的横线上,答在试卷上不得分.在算法正确的前提下,评价一个算法的两个标准是时间复杂度和空间复杂度.将代数式 z=转换成程序设计中的表达式
43、为SQRT(x2+y2)/(a+b).软件危机出现于20 世纪 60 年代末,为了解决软件危机,人们提出了 软件工程学 的原理来设计软件,这就是软件工程诞生的基础.数据模型 是数据库设计的核心.在关系模型中,把数据看成一个二维表,每一个二维表称为一个关系.模拟测试七一.选择题(每小题 2 分)在下列各题的A),B)C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上不得分1.下列叙述中正确的是(A)A)线性表是线性结构B)栈与队列是非线性结构C)线性链表是非线性结构D)二叉树是线性结构2.非空的循环单列表head 的尾结点(由 p 所指向),满足(C
44、)A)p next=NULLB)p=NULLC)pnext=headD)p=head 3.已知数据表A 中每个元素距其最终位置不远,为节省时间,应采用的算法是(B)A)堆排序 B)直接插入排序C)快速排序 D)直接选择排序4.对建立良好的程序设计风格,下面描述正确的是(A)A)程序应简单清晰可读性好B)符号名的命名只要符合语法C)充分考虑程序的执行效率D)程序的注释可有可无5.下列不属于结构化分析常用工具的是(A)A)数据流图 B)数据字典 C)判定树 D)PAD 图6.在软件生产过程中,需求信息的给出是(D)A)程序员 B)项目管理者 C)软件分析设计人员D)软件用户7.下列工具中为需求分析
45、常用的工具是(D)A)PADB)PFDC)N-SD)DFD 8.NULL 是指(C)A)0B)空格 C)未知的值或无任何值D)空字符串9.数据库的故障恢复一般是由(C)A)数据流图完成的B)数据字典完成的C)DBA 完成的 D)PAD 图完成的10.下列说法中,不属于数据模型所描述的内容的是(C)A)数据结构 B)数据操作 C)数据查询 D)数据约束二.填空题(每空 2 分)请将每一空的正确答案写在答题卡11 15 序号的横线上,答在试卷上不得分.1.冒泡排序法在最好的情况下的元素交换次数为0.2.在最坏的情况下,堆排序需要比较的次数为O(log2n).3.若串 s=“MathTypes”,则
46、其子串的数目是46.4.软件开发环境是全面支持软件开发全过程的 软件工具 集合.5.关系数据库的关系演算语言是以谓词演算 为基础的 DML 语言.模拟测试八一.选择题(每小题 2 分)在下列各题的A),B)C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上不得分.1.循环链表的主要优点是(B)不在需要头指针了从表中任一结点出发都能访问到整个链表在进行插入删除运算时,能更好地保证链表不断开已知某个结点的位置后,能够容易找到它的直接前件2.栈底至栈顶依次存放元素A,B,C,D,在第五个元素E 入栈前,栈中元素可以出栈,则出栈序列可能是(B)A)ABCD
47、EB)DCBEAC)DBCEAD)CDABE 3.n 个顶点的强连通图的边数至少有(C)A)n-1B)n(n-1)C)nD)n+1 4.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在,在程序的效率相比,人们更重视程序的(C)A)安全性 B)一致性 C)可理解性 D)合理性5.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的(C)A)抽象和信息隐蔽B)局部化和封装化C)内聚性和耦合性D)激活机制和控制方法6.软件开发的结构化生命周期方法将软件生命周期划分成(A)A)定义开发运行维护B)设计阶段编程阶段测试阶段C)总体设计详细设计编程调试D)需求分析功能定义
48、系统设计7.在软件工程中,白盒测试法可用于测试程序的内部结构,此方法将程序看作是(A)A)路径的集合B)循环的集合 C)目标的集合D)地址的集合8.在数据管理技术发展过程中,文件系统与数据库系统的主要区别是数据库系统具有(A)A)特定的数据模型B)数据无冗余C)数据可共享D)专门的数据管理软件9.数据库设计包括两个方面的设计内容,它们是(A)A)概念设计和逻辑设计B)模式设计和内模式设计C)内模式设计和物理设计D)结构特性设计和行为特性设计10.实体是信息世界中广泛使用的一个术语,它用于表示(C)A)有生命的事物B)无生命的事物C)实际存在的事物D)一切事物二.填空题(每空 2 分)请将每一空
49、的正确答案写在答题卡11 15 序号的横线上,答在试卷上不得分.1.常用的黑盒测试有等价分类法边值分析法 因果图法和错误推测法4 种.2.测试的目的的暴露错误,评价程序的可靠性;而调试 的目的是发现错误的位置并改正错误.3.软件维护活动包括以下几类:改正性维护适应性维护完善性 维护和预防性维护.4.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为消息.5.关键字 ASC 和 DESC 分别表示 升序排列和降序排列的含义.模拟测试九一.选择题(每小题 2 分)在下列各题的A),B)C),D)4个选项中,只有 1 个选项是正确的,请将正确选项填涂在答题卡相应的位置上,答在试卷上
50、不得分1.最简单的交换排序方法是(D)A)快速排序 B)选择排序 C)堆排序 D)冒泡排序2.栈通常采用的两种存储结构是(A)线性存储结构和链表存储结构列方式和索引方式表存储结构和数组线行存储结构和非线性存储结构3.线性表的顺序存储结构和线性表的链式存储结构分别是(B)A)顺序存储的存储结构、顺序结构的存储结构B)随机存储的存储结构、顺序存储的存储结构C)随机存储的存储结构、随机存取的存储结构D)任意存储的存储结构、任意存储的存储结构4完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的方法是(A)A)黑盒测试法B)白盒测试法C)错误推测法D)安装测试法5在结构化设计方法中,生