计算机二级C语言考试常考重点试题总汇__公共基础部分
全国计算机二级C语言公共基础知识
选择合适的数据结构和算 法
合理使用数组、链表、哈希表 等数据结构,以及快速排序、 二分查找等算法,可以提高代 码效率和性能。
减少函数调用
过多的函数调用会增加时间复 杂度,可以通过减少函数调用 或使用内联函数来提高性能。
避免重复计算
将重复计算的结果存储在变量 中,避免每次需要时重新计算 。
使用缓存技术
指针的运算
指针可以进行加法、减法、比较等运 算,以方便对数组元素的访问和操作。
指针的声明与初始化
指针变量需要先声明类型,再通过赋 值操作符将变量的地址赋值给指针。
指针与数组
通过指针可以方便地访问数组元素, 例如使用指针遍历数组、访问数组元 素等。
结构体与联合体
结构体的概念
结构体是一种自定义数据类型,可以 包含多个不同类型的数据成员。
1973-1978年
C语言逐渐成熟,成为UNIX操作系统的主要编程语 言。
1978-至今
C语言成为计算机领域中最广泛使用的编程语言之一 ,广泛应用于系统软件、应用软件、嵌入式系统等 领域。
C语言的特点
01
02
03
04
高效
C语言是一种低级语言,能够 直接代码清晰易 懂,易于学习和使用。
结构化
C语言采用结构化的程序设计 方法,强调代码的模块化和组 织结构,提高了代码的可读性 和可维护性。
可移植性
C语言的标准规范统一,在不 同的操作系统和硬件平台上具 有良好的可移植性。
C语言的应用领域
系统软件
操作系统、编译器、数据库等系统软件主要使用 C语言进行开发。
嵌入式系统
C语言在嵌入式系统中应用广泛,如智能家居、 智能硬件等领域。
结构体的声明与初始化
计算机二级C语言(公共基础知识基本数据结构与算法)
计算机二级C语言(公共基础知识基本数据结构与算法)全国计算机等级考试二级公共基础知识基本要求1.掌握算法的基本概念。
2.掌握基本数据结构及其操作。
3.掌握基本排序和查找算法。
4.掌握逐步求精的结构化程序设计方法。
5.掌握软件工程的基本方法,具有初步应用相关技术进行软件开发的能力。
6.掌握数据的基本知识,了解关系数据库的设计一、数据结构与算法二、程序设计基础三、软件工程基础四、数据库设计基础数据结构与算法1.算法的基本概念;算法复杂度的概念和意义(时间复杂度与空间复杂度)。
2.数据结构的定义;数据的逻辑结构与存储结构;数据结构的图形表示;线性结构与非线性结构的概念。
3.线性表的定义;线性表的顺序存储结构及其插入与删除运算。
4.栈和队列的定义;栈和队列的顺序存储结构及其基本运算。
5.线性单链表、双向链表与循环链表的结构及其基本运算。
6.树的基本概念;二叉树的定义及其存储结构;二叉树的前序、中序和后序遍历。
7.顺序查找与二分法查找算法;基本排序算法(交换类排序,选择类排序,插入类排序)。
一.算法的基本概念计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
就是指解题方案的准确而完备的描述。
一个算法通常由两种基本要素组成:一是对数据对象的运算和操作,二是算法的控制结构。
1.算法的基本特征:可行性,确定性,有穷性,拥有足够的情报。
2.算法的基本要素:算法中对数据的运算和操作、算法的控制结构。
3.算法设计的基本方法:列举法、归纳法、递推、递归、减半递推技术、回溯法。
4.算法设计的要求:正确性、可读性、健壮性、效率与低存储量需求C在计算机中,算法是指______。
A.查询方法B.加工方法C.解题方案的准确而完整的描述D.排序方法二.算法的复杂度1.算法的时间复杂度:指执行算法所需要的计算工作量2.算法的空间复杂度:执行这个算法所需要的内存空间算法的复杂度的表示时间复杂度:算法中基本操作重复执行的次数是问题规模n的某个函数f(n),算法的时间量度记作T(n)=O(f(n))表示随问题规模n的增大,算法执行时间的增长率和f(n)的增长率相同,称作算法的渐近时间复杂度,简称时间复杂度。
【计算机二级考试C语言】重点+题库!必考知识点总结,包你过!
【计算机⼆级考试C语⾔】重点+题库!必考知识点总结,包你过!全国计算机等级考试(National Computer Rank Examination,简称NCRE)是教育部考试中⼼主办,⾯向社会,⽤于考查应试⼈员计算机应⽤知识与技能的全国性计算机⽔平考试。
级别分为⼀⼆三四级,⼆级考试科⽬有:C语⾔程序设计,MS Office⾼级应⽤,Java语⾔程序设计等等。
今天主要介绍C语⾔程序设计考试相关内容及备考⽅法。
01题型分数分布(1)单项选择题,40 题,40 分(含公共基础知识部分 10 分);(2)程序填空题,3 ⼩空,18 分;(3)程序改错题,2 个错误,18 分;(4)程序设计题,24分。
02上机考试环境及使⽤的软件上机考试环境为 Windows 7 简体中⽂版,Visual C++ 6.003考试要求1、熟悉Visual C++6. 0集成开发环境。
2、掌握结构化程序设计的⽅法,具有良好的程序设计风格。
3、掌握程序设计中简单的数据结构和算法并能阅读简单的程序。
4、在Visual C++6. 0集成环境下,能够编写简单的C程序,并具有基本的纠错和调试程序的能⼒。
04考试内容⼀、C语⾔程序的结构1. 程序的构成,main函数和其他函数。
2. 头⽂件,数据说明,函数的开始和结束标志以及程序中的注释。
3. 源程序的书写格式。
4. C语⾔的风格。
⼆、数据类型及其运算1. C的数据类型(基本类型,构造类型,指针类型,⽆值类型)及其定义⽅法。
2. C运算符的种类、运算优先级和结合性。
3. 不同类型数据间的转换与运算。
4. C表达式类型(赋值表达式,算术表达式,关系表达式,逻辑表达式,条件表达式,逗号表达式)和求值规则。
三、基本语句1. 表达式语句,空语句,复合语句。
2. 输⼊输出函数的调⽤,正确输⼊数据并正确设计输出格式。
四、选择结构程序设计1. ⽤if 语句实现选择结构。
2. ⽤switch语句实现多分⽀选择结构。
全国计算机等级考试二级C语言公共基础部分
全国计算机等级考试二级C语言笔试试题——公共基础部分(一)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)只有根结点的二叉树是线性结构6)对如下二叉树进行后序遍历的结果为A)ABCDEF B)DBEAFCC)ABDECF D)DEBFCA 7)在深度为7的满二叉树中,叶子结点的个数为A)32B)31C)64D)638)“商品”与“顾客”两个实体集之间的联系一般是A)一对一B)一对多C)多对一D)多对多9)在E-R图中,用来表示实体的图形是A)矩形B)椭圆形C)菱形D)三角形10)数据库DB,数据库系统DBS,数据库管理系统DBMS之间的关系是A)DB包含DBS和DBMSB)DBMS包含DB和DBSC)DBS包含DB和DBMSD)没有任何关系1)对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为【1】。
2)在面向对象方法中,【2】描述的是具有相似属性与操作的一组对象。
3)在关系模型中,把数据看成是二维表,每一个二维表称为一个【3】。
4)程序测试分为静态分析和动态测试,其中【4】是指不执行程序,而只是对程序文本进行检查,通过阅读和讨论,分析和发现程序中的错误。
5)数据独立性分为逻辑独立性与物理独立性,当数据的存储结构改变时,其逻辑结构可以不变,因此,基于逻辑结构的应用程序不必修改,称为【5】。
(二)(1)下列选项中不符合良好程序设计风格的是A)源程序要文档化B)数据说明的次序要规范化C)避免滥用goto语句D)模块设计要保证高耦合、高内聚(2)从工程管理角度,软件设计一般分为两步完成,它们是A)概要设计与详细设计B)数据设计与接口设计C)软件结构设计与数据设计D)过程设计与数据设计(3)下列选项中不属于软件生命周期开发阶段任务的是A)软件测试B)概要设计C)软件维护D)详细设计(4)在数据库系统中,用户所见的数据模式为A)概念模式B)外模式C)内模式D)物理模式(5)数据库设计的四个阶段是:需求分析、概念设计、逻辑设计和A)编码设计B)测试阶段C)运行阶段D)物理设计(6)设有如下三个关系表下列操作中正确的是()。
全国计算机等级考试二级C语言笔试高频考点
文件的关闭:使用 fclose()函数,需要 提供文件指针
打开方式:r(只读 )、w(只写)、 (追加)、r+(读 写)、w+(写读) 、+(追加读写)
错误处理:使用 ferror()函数和 clererr()函数进行 错误检测和清除
文件的读写操作
文件的打开和关闭:使用fopen()和fclose()函数 文件的读写:使用fred()和fwrite()函数 文件的定位:使用fseek()函数 文件的随机读写:使用fgetc()和fputc()函数 文件的格式化读写:使用fscnf()和fprintf()函数 文件的缓冲区管理:使用setbuf()和setvbuf()函数
文件操作
05
文件的基本概念
文件:存储在磁盘上的一组相关数据的集合 文件类型:文本文件、二进制文件、数据文件等 文件名:标识文件的唯一名称,由字母、数字、下划线组成 文件路径:定位文件的路径,包括绝对路径和相对路径
文件的打开与关闭
文件的打开:使用 fopen()函数,需要 提供文件名和打开 方式
调试技巧与注意事项
• 使用断点调试:设置断点,逐步执行代码,查看变量值和程序状态 • 使用单步调试:逐行执行代码,查看变量值和程序状态 • 使用打印语句:在关键位置插入打印语句,查看变量值和程序状态 • 使用调试工具:使用调试工具,如Visul Studio的调试器,查看变量值和程序状态 • 注意变量类型和范围:避免变量类型不匹配和越界访问 • 注意逻辑错误:避免逻辑错误,如条件判断错误、循环控制错误等 • 注意函数调用和参数传递:避免函数调用错误和参数传递错误 • 注意内存管理:避免内存泄漏和野指针错误 • 注意代码规范和命名规则:遵守代码规范和命名规则,提高代码可读性和可维护性
算机等级考试二级c语言公共基础知识...
全国计算机等级考试二级c语言公共基础知识总结第一章数据结构与算法1.1 算法算法:是指解题方案的准确而完整的描述。
算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。
算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合。
基本运算包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制结构:顺序结构、选择结构、循环结构。
算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要的计算工作量。
算法空间复杂度是指执行这个算法所需要的内存空间。
1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合。
数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
全国计算机等级考试二级c语言公共基础知识总结
全国计算机等级考试二级c语言公共基础知识总结第一章数据结构与算法1。
1 算法算法:是指解题方案的准确而完整的描述.算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计.算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。
算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合。
基本运算包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制结构:顺序结构、选择结构、循环结构。
算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要的计算工作量.算法空间复杂度是指执行这个算法所需要的内存空间.1。
2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合.数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构.1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
计算机二级C语言公共基础知识与考点汇总
计算机二级公共基础知识总结计算机二级公共基础知识总结第一章数据结构与算法1.1 算法算法是指解题方案的准确而完整的描述。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
特征包括:算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报。
算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合。
基本运算和操作包括:算术运算、逻辑运算、关系运算、数据传输。
算法时间复杂度是指执行算法所需要的计算工作量。
算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法的控制结构:顺序结构、选择结构、循环结构。
算法空间复杂度是指执行这个算法所需要的内存空间。
1.2 数据结构的基本基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合。
数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构线性表由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
二级c语言公共基础知识试题及答案
二级c语言公共基础知识试题及答案二级c语言公共基础知识试题及答案全国计算机二级等级考试的笔试包括基础知识和程序设计两部分,以下是由店铺整理关于二级c语言公共基础知识试题的内容,希望大家喜欢!二级c语言公共基础知识试题及答案(一)(1) 算法的复杂度主要包括______复杂度和空间复杂度。
答:时间(2) 数据的逻辑结构在计算机存储空间中的存放形式称为数据的______。
答:模式#逻辑模式#概念模式(3) 若按功能划分,软件测试的方法通常分为白盒测试方法和______测试方法。
答:黑盒(4) 如果一个工人可管理多个设施,而一个设施只被一个工人管理,则实体"工人"与实体"设备"之间存在______联系。
答:一对多#1:N#1:n(5) 关系数据库管理系统能实现的专门关系运算包括选择、连接和______。
答:投影(6) 在先左后右的原则下,根据访问根结点的次序,二叉树的遍历可以分为三种:前序遍历、______遍历和后序遍历。
答:中序(7) 结构化程序设计方法的`主要原则可以概括为自顶向下、逐步求精、______和限制使用goto语句。
答:模块化(8) 软件的调试方法主要有:强行排错法、______和原因排除法。
答:回溯法(9) 数据库系统的三级模式分别为______模式、内部级模式与外部级模式。
答:概念#概念级(10) 数据字典是各类数据描述的集合,它通常包括5个部分,即数据项、数据结构、数据流、______和处理过程。
答:数据存储来源二级c语言公共基础知识试题及答案(二)(1) 设一棵完全二叉树共有500个结点,则在该二叉树中有______个叶子结点。
答:250(2) 在最坏情况下,冒泡排序的时间复杂度为______。
答:n(n-1)/2#n*(n-1)/2#O(n(n-1)/2)#O(n*(n-1)/2)(3) 面向对象的程序设计方法中涉及的对象是系统中用来描述客观事物的一个______。
计算机二级C语言公共公共基础知识部分
第章数据结构与算法算法.算法地概念:是指解题方案地准确而完整地描述.算法地基本特征:可行性、确定性、有穷性(有限地时间)、拥有足够地情报.算法地复杂度:时间复杂度和空间复杂度()时间复杂度:算法所需要地计算工作量(算法所执行地基本运算次数)()空间复杂度:执行这个算法所需要地内存空间数据结构地基本概念.数据结构研究地三个问题()逻辑结构:指反应数据元素之间逻辑关系地数据结构()存储结构(物理结构):数据地逻辑结构在计算机存储空间中地存放形式.()对各种数据结构进行地运算.数据结构定义:是指带有结构地数据元素地集合.所谓结构就是指数据元素之间地前后件关系.在数据结构中,没有前件地结点称为根结点,没有后件地结点为终端结点(也叫叶子结点)..空地数据结构:一个元素都没有地数据结构..数据结构地种类:线性结构与非线性结构.线性结构:有且只有一个根结点,每一个结点最多有一个前件,也最多有一个后件.非线性结构:如果一个数据结构不是线性结构,则称之为非线性结构.线性表及其顺序存储.线性表是最简单、最常用地一种线性结构..非空线性表地结构特征:()有且只有一个根结点,无前件()有且只有一个终端(叶子)结点,无后件()除根结点与终端结点外,其他所有结点有且只有一个前件,也有且只有一个后件.在线性表中结点地个数称为线性表地长度,当时,称为空表..线性表顺序存储结构地基本特点:()所有元素所占地存储空间是连续地()各元素在存储空间中是按逻辑顺序依次存放地.在长度为地顺序存储地线性表中,当在任何位置上插入或删除一个元素概率都相等时,插入或删除一个元素所需移动元素地平均个数是为.栈和队列.栈:限定在一端进行插入与删除地线性表..栈地结构特点:先进后出或后进先出.栈地基本运算:入栈运算、退栈运算、读栈顶元素()上溢:当栈空间已满,不能再入栈时,称为“上溢”.()下溢:当栈空间已空,不能再出栈时,称为“下溢”..队列:允许在一端进行插入、而在另一端进行删除地线性表.队列地结构特点:先进先出或后进后出.循环队列:将队列存储空间地最后一个位置绕到第一个位置,形成逻辑上地环状空间..循环队列中元素个数:(分两种情况)()队尾指针>队头指针:元素个数队尾指针队头指针()队尾指针<队头指针:元素个数队尾指针队列容量–队头指针线性链表.线性表地链式存储结构称为线性链表..在链式存储结构中,每个数据结点由两部分组成:一部分存放数据元素地值,称为数据域;另一部分存放下一结点地存储地址,称为指针域..在链式存储结构中,存储数据结构地存储空间可以不连续,各数据结点地存储顺序与数据元素地逻辑关系可以不一致,而数据元素之间地逻辑关系是由指针域来确定地..线性链表地优点:在线性链表中插入或删除一个元素时,不需要移动元素地位置,只需改变指针地指向就行了..循环链表地优点:只要指出表中任何一个结点地位置,就可以从它出发访问到表中其他所有地结点,而线性单链表做不到这一点.树与二叉树.树是一种简单地非线性结构..树地基本术语:父结点;根结点;子结点;叶子结点;结点地度;树地度;树地深度根结点在第层.叶子结点没有子树..二叉树:只有一个根结点,每一个结点最多有颗子树,且分别叫做左子树和右子树..二叉树地基本性质:()在二叉树地第层上,最多有(>)个结点()深度为地二叉树最多有个结点()度为地结点(叶子结点)是比度为地结点多一个()具有个结点地二叉树,其深度至少为[]当完全二叉树总结点为偶数时,叶子节点地个数为:当完全二叉树总结点为奇数时,叶子节点地个数为:().二叉树地遍历:前序遍历(根左右);中序遍历(左根右);后序遍历(左右根)查找技术.顺序查找:最坏情况下,需比较次..二分法查找:最坏情况下,需比较次.排序技术.交换类排序:()冒泡排序法:()(最坏情况下)()快速排序法:()(最坏情况下) ()(平均情况下).插入类排序:()简单插入排序法:()(最坏情况下)()希尔排序法:(. )(最坏情况下).选择类排序:()简单选择法:()(最坏情况下)()堆排序法: () (最坏情况下)第章程序设计基础.程序设计风格:清晰第一,效率第二.注释一般分为:序言性注释和功能性注释.结构化程序设计地原则:自顶向下,逐步求精,模块化,限制使用语句.结构化程序地基本结构:顺序结构、选择结构、重复结构(循环结构).对象:客观世界中地任何实体.类是具有共同属性、共同方法地对象地集合.对象是类地一个实例.类是对象地抽象..对象特点:标识唯一性、分类性、多态性、封装性、模块独立性好.消息:是对象与对象之间传递地信息..在面向对象方法中,类之间共享属性和操作地机制称为:继承.继承性地优点:相似地对象可以共享程序地代码和数据结构,从而大大减少了程序中地冗余信息,提高软件地可重用性,便于软件修改维护第章软件工程基础软件工程地基本概念.软件:包括程序、数据及相关文档地完整集合..软件按功能分为:应用软件、系统软件、支撑软件(或工具软件)..软件危机:是泛指在计算机软件地开发和维护过程中所遇到地一系列严重问题. .软件工程概念地出现源自软件危机.软件工程要素:方法,工具,过程(支持软件开发地各个环节地控制、管理)..软件生命周期:将软件产品从提出、实现、使用维护到停止使用退役地过程. .软件工程地理论和技术性研究:软件开发技术和软件工程管理..软件工程原则:抽象、信息隐蔽、模块化、局部化、确定性、一致性、完备性、可验证性结构化分析方法.需求分析地任务:发现需求、求精、建模和定义需求地过程.需求分析地目地是确定系统地功能..结构化需求分析地常用工具()数据流图():()数据字典():结构化需求分析方法地核心.、软件地需求分析阶段地工作,可以概括为四个方面:需求获取、需求分析、编写需求规格说明书和需求评审..软件需求规格说明书:是需求分析阶段地最后成果,是软件开发中地重要文档之一..软件需求规格说明书地作用:()便于用户、开发人员进行理解和交流()反映出用户问题地结构,可以作为软件开发工作地基础和依据.()作为确认测试和验收地依据..软件需求规格说明书地特点:正确性、无歧义性(最重要)、完整性、可验证性、一致性、可理解性、可修改性、可追踪性结构化设计方法.软件设计从技术观点看,软件设计包括软件结构设计、数据设计、接口设计、过程设计.()结构设计:定义软件系统各主要部件之间地关系.()数据设计:将分析时创建地模型转化为数据结构地定义.()接口设计:描述软件内部、软件和协作系统之间以及软件与人之间如何通信.()过程设计:把系统结构部件转换成软件地过程性描述..软件设计从工程管理角度看,软件设计分两步完成:概要设计和详细设计.软件设计地基本原理抽象、模块化、信息隐蔽、模块独立性.衡量软件独立性依据:耦合性(是模块间互相连接地紧密程度地度量)内聚性(是一个模块内部各个元素间彼此结合地紧密程度地度量).耦合性包括:内容耦合、公共耦合、外部耦合、控制耦合、标记耦合、数据耦合、非直接耦合..优秀地软件设计应做到“高内聚,低耦合”..与结构化需求分析方法对应地是结构化设计方法..常用地软件结构设计工具是结构图(程序结构图).其中箭头表示模块间地调用关系..典型地数据流类型有两种:变换型和事务型..结构化详细设计工具:()程序流程图:表示控制流;矩形□表示加工步骤;菱形◇表示逻辑条件.()图:为了避免流程图在描述程序逻辑时地随意性和灵活性,提出了用方框图来代替传统地程序流程图,通常也称为图.软件测试.软件测试地目地:检验它是否满足规定地需求可是弄清预期结果与实际结果之间地差别,是为了发现错误而执行程序地过程..测试要以查找错误为中心,而不是为了演示软件地正确功能..软件测试地准则:()所有测试都应追溯到需求()严格执行测试计划,排除测试地随意性()充分注意测试中地群集现象:为了提高测试效率,测试人员应该集中对付那些错误群集地程序.()程序员应避免检查自己地程序()穷举测试不可能:测试只能证明程序中有错误,不能证明程序中没有错误()妥善保存测试计划、测试用例、出错统计和最终分析报告,为维护提供方便.软件测试地方法:()按是否需要执行被测软件划分:①静态测试:包括代码检查、静态结构分析、代码质量度量等.②动态测试:是为了发现错误而执行程序地过程.测试用例由测试输入数据和之与对应地预期输出结果两部分组成.()按功能划分:①白盒测试:保证所侧模块中每一独立路径至少执行一次(穷举路径测试)②黑盒测试:完全不考虑程序内部地逻辑结构和内部特性,只依据程序地需求和功能规格说明,检查程序地功能是否符合它地功能说明.黑盒测试方法包括:等价类划分法、边界值分析法、错误推测法、因果图等..软件测试地实施:软件测试是保证软件质量地重要手段,目地是使软件测试工作系统化.软件测试地过程:() 单元测试:目地是发现各模块内部可能存在地各种错误.() 集成测试:是测试和组装软件地过程.() 确认测试:验证软件地功能和性能及其他特性是否满足了需求规格说明中确定地各种需求.() 系统测试:.程序地调试地任务:诊断和改正程序中地错误(主要在开发阶段).软件测试是尽可能多地发现软件中地错误.第章数据库设计基础数据库系统地基本概念.数据库技术地基本目标是解决数据共享问题..数据:是描述事物地符号记录..数据库():是结构化地相关数据集合,是多种应用数据地集成,并可被多个应用程序共享..数据库管理系统():是一种系统软件,是数据库系统地核心,位于用户和操作系统()之间..数据语言: ()数据定义语言():负责数据地模式定义与数据地物理存取构建.()数据操纵语言():负责数据地操作,包括查询及增、删、改等操作.()数据控制语言():负责数据完整性、安全性地定义与检查以及并发控制、故障恢复等功能..数据库管理员():主要工作包括数据库设计、数据库维护、改善系统性能,提高系统效率..数据库系统()由五部分组成:数据库、数据库管理系统、数据库管理员、硬件平台、软件平台.数据库系统包括数据库和数据库管理系统. (即包括和).数据管理发展三个阶段:人工管理阶段、文件系统阶段、数据库系统阶段.在数据管理技术地发展过程中,可实现数据共享地是:数据库系统系统阶段.数据库系统阶段并没有完全消除数据冗余,只是减少了数据冗余..数据库系统基本特点:()数据地集成性()数据地高共享性与低冗余性()数据独立性分为物理独立性和逻辑独立性两级.()数据统一管理与控制物理独立性:当数据地物理结构(存储结构)改变时,不影响数据地逻辑结构,从而不引起应用程序地变化.逻辑独立性:当数据地逻辑结构改变,不需要相应地修改应用程序. .数据库系统地三级模式:()概念模式:全体用户(应用)公共数据视图()外模式:子模式(用户模式)单个用户地数据视图()内模式:物理模式.数据库系统地二级映射: ()概念模式到内模式地映射 ()外模式到概念模式地映射数据模型.数据模型描述地内容:数据结构、数据操作、数据约束.数据模型按不同地层次分为:概念数据模型、逻辑数据模型、物理数据模型.模型(也叫实体联系模型):()实体:现实世界中地事物可以抽象成为实体()属性:事物地特性()联系:现实世界中事物之间地关联(一对一联系、一对多联系、多对多联系)()模型图示法:实体集表示法:矩形属性表示法:椭圆形联系表示法:菱形.数据模型分为三种:层次模型、网状模型和关系模型..关系模型:用二维表结构来表示实体及实体间联系地方法就是关系模型..在关系模型中,一个二维表就是一个关系;表中每行数据称为元组;每列是一个属性,二维表中属性地个数,称为属性元数..关系中地数据约束分为三种:实体完整性约束、参照完整性约束和用户定义地完整性约束.关系代数(见公共基础课本—)关系地基本运算:并,交,选择,投影,连接,笛卡尔积.数据库设计与管理.数据库设计是数据库应用地核心. 重点有三个阶段:需求分析、概念设计、逻辑设计.数据库设计一般采用生命周期法,包括:需求分析阶段、概念设计阶段、逻辑设计阶段、物理设计阶段、编码阶段、测试阶段、运行阶段、进一步修改阶段..需求分析阶段:是整个设计活动地基础,也是最困难、最花时间地一步..数据字典是在需求分析阶段建立,在数据库设计过程中不断修改、充实、完善地. 数据项是数据地最小单位..概念设计阶段视图设计地三种次序:自顶向下、由底向上、由内向外..数据库地逻辑设计:主要工作是将—图转换成指定地中地关系模式.()实体与联系都可以表示成关系.()图中属性也可以转换成关系地属性.()实体集也可以转换成关系.。
最新计算机二级考试c语言公共基础题知识点
计算机二级考试c语言公共基础题知识点第一章数据结构与算法1.1 算法算法:是指解题方案的准确而完整的描述。
算法不等于程序,也不等计算机方法,程序的编制不可能优于算法的设计。
算法的基本特征:是一组严谨地定义运算顺序的规则,每一个规则都是有效的,是明确的,此顺序将在有限的次数下终止。
特征包括:(1)可行性;(2)确定性,算法中每一步骤都必须有明确定义,不充许有模棱两可的解释,不允许有多义性;(3)有穷性,算法必须能在有限的时间内做完,即能在执行有限个步骤后终止,包括合理的执行时间的含义;(4)拥有足够的情报.算法的基本要素:一是对数据对象的运算和操作;二是算法的控制结构。
指令系统:一个计算机系统能执行的所有指令的集合.基本运算包括:算术运算、逻辑运算、关系运算、数据传输。
算法的控制结构:顺序结构、选择结构、循环结构.算法基本设计方法:列举法、归纳法、递推、递归、减斗递推技术、回溯法。
算法复杂度:算法时间复杂度和算法空间复杂度。
算法时间复杂度是指执行算法所需要的计算工作量.算法空间复杂度是指执行这个算法所需要的内存空间。
1。
2 数据结构的基本概念数据结构研究的三个方面:(1)数据集合中各数据元素之间所固有的逻辑关系,即数据的逻辑结构;(2)在对数据进行处理时,各数据元素在计算机中的存储关系,即数据的存储结构;(3)对各种数据结构进行的运算。
数据结构是指相互有关联的数据元素的集合。
数据的逻辑结构包含:(1)表示数据元素的信息;(2)表示各数据元素之间的前后件关系。
数据的存储结构有顺序、链接、索引等。
线性结构条件:(1)有且只有一个根结点;(2)每一个结点最多有一个前件,也最多有一个后件。
非线性结构:不满足线性结构条件的数据结构。
1.3 线性表及其顺序存储结构线性表是由一组数据元素构成,数据元素的位置只取决于自己的序号,元素之间的相对位置是线性的。
在复杂线性表中,由若干项数据元素组成的数据元素称为记录,而由多个记录构成的线性表又称为文件。
全国计算机等级考试二级C语言公共基础知识(附例题)
第1章数据结构与算法经过对部分考生的调查以及对近年真题的总结分析,笔试部分经常考查的是算法复杂度、数据结构的概念、栈、二叉树的遍历、二分法查找,读者应对此部分进行重点学习。
详细重点学习知识点:1.算法的概念、算法时间复杂度及空间复杂度的概念2.数据结构的定义、数据逻辑结构及物理结构的定义3.栈的定义及其运算、线性链表的存储方式4.树与二叉树的概念、二叉树的基本性质、完全二叉树的概念、二叉树的遍历5.二分查找法6.冒泡排序法1.1算法考点1 算法的基本概念考试链接:考点1在笔试考试中考核的几率为30%,主要是以填空题的形式出现,分值为2分,此考点为识记内容,读者还应该了解算法中对数据的基本运算。
计算机解题的过程实际上是在实施某种算法,这种算法称为计算机算法。
1.算法的基本特征:可行性、确定性、有穷性、拥有足够的情报。
2.算法的基本要素:(1)算法中对数据的运算和操作一个算法由两种基本要素组成:一是对数据对象的运算和操作;二是算法的控制结构.在一般的计算机系统中,基本的运算和操作有以下4类:算术运算、逻辑运算、关系运算和数据传输。
(2)算法的控制结构:算法中各操作之间的执行顺序称为算法的控制结构。
描述算法的工具通常有传统流程图、N-S结构化流程图、算法描述语言等。
一个算法一般都可以用顺序、选择、循环3种基本控制结构组合而成.考点2 算法复杂度考试链接:考点2在笔试考试中,是一个经常考查的内容,在笔试考试中出现的几率为70%,主要是以选择的形式出现,分值为2分,此考点为重点识记内容,读者还应该识记算法时间复杂度及空间复杂度的概念。
1。
算法的时间复杂度算法的时间复杂度是指执行算法所需要的计算工作量。
同一个算法用不同的语言实现,或者用不同的编译程序进行编译,或者在不同的计算机上运行,效率均不同。
这表明使用绝对的时间单位衡量算法的效率是不合适的.撇开这些与计算机硬件、软件有关的因素,可以认为一个特定算法”运行工作量"的大小,只依赖于问题的规模(通常用整数n表示),它是问题规模的函数。
计算机二级C语言公共基础知识
一.选择题(每小题2分)在下列各题的A),B)C),D)4个选项中,只有1个选项是正确的,.1.假设线性表的长度为n,则在最坏的情况下,冒泡排序需要的比较次数为( D )A)log2n2.算法分析的目的是( D )A)找出数据结构的合理性B)找出算法中输入和输出之间的关系C)分析算法的易懂性和可靠性 D)分析算法的效率以求改进3.线性表L=(a ),下列说法正确的是( D )A)每个元素都有一个直接前件和直接后件B)线性表中至少要有一个元素C)表中诸元素的排列顺序必须是由小到大或由大到小D)除第一个元素和最后一个元素外,其余每个元素都有一个且只有一个直接前件和直接后件4.在单链表中,增加头结点的目的是( A )A)方便运算的实现 B)使单链表至少有一个结点C)标识表中首结点的位置D)说明单链表是线性表的链式存储实现5.软件工程的出现是由于( C )A)程序设计方法学的影响 B)软件产业化的需要C)软件危机的出现 D)计算机的发展6.软件开发离不开系统环境的支持,其中必要的测试数据属于( D )A)硬件资源 B)通信资源 C)支持软件 D)辅助资源7.在数据流图中,带有名字的箭头表示( 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 ]序号的横线上,答在试卷上不得分.2.在算法正确的前提下,评价一个算法的两个标准是[ 时间复杂度和空间复杂度 ].3.将代数式z= 转换成程序设计中的表达式为[ SQRT(x^2+y^2)/(a+b) ].4.软件危机出现于20世纪60年代末,为了解决软件危机,人们提出了[ 软件工程学 ]的原理来设计软件,这就是软件工程诞生的基础.5.[ 数据模型 ]是数据库设计的核心.6.在关系模型中,把数据看成一个二维表,每一个二维表称为一个[ 关系 ].一.选择题(每小题2分)在下列各题的A),B)C),D)4个选项中,只有1个选项是正确的,1.下列叙述中正确的是( A )A)线性表是线性结构 B)栈与队列是非线性结构C)线性链表是非线性结构 D)二叉树是线性结构2.非空的循环单列表head的尾结点(由p所指向),满足( C )A)p->next==NULL B)p==NULL C)p->next=head D)p=head3.已知数据表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.下列工具中为需求分析常用的工具是( D )A)PAD B)PFD C)N-S D)DFD8.NULL是指( C )A)0 B)空格 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 ].4.软件开发环境是全面支持软件开发全过程的[ 软件工具 ]集合.5.关系数据库的关系演算语言是以[ 谓词演算 ]为基础的DML语言.模拟测试八一.选择题(每小题2分)在下列各题的A),B)C),D)4个选项中,只有1个选项是正确的1.循环链表的主要优点是( B )A.不在需要头指针了B.从表中任一结点出发都能访问到整个链表C.在进行插入﹑删除运算时,能更好地保证链表不断开D.已知某个结点的位置后,能够容易找到它的直接前件2.栈底至栈顶依次存放元素A,B,C,D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是( B )A)ABCDE B)DCBEA C)DBCEA D)CDABE3.n个顶点的强连通图的边数至少有( C )A)n-1 B)n(n-1) C)n D)n+14.在结构化程序设计思想提出之前,在程序设计中曾强调程序的效率,现在,在程序的效率相比,人们更重视程序的( C )A)安全性 B)一致性 C)可理解性 D)合理性5.模块独立性是软件模块化所提出的要求,衡量模块独立性的度量标准则是模块的( C )A)抽象和信息隐蔽 B)局部化和封装化C)内聚性和耦合性 D)激活机制和控制方法6.软件开发的结构化生命周期方法将软件生命周期划分成( A )A)定义﹑开发﹑运行维护 B)设计阶段﹑编程阶段﹑测试阶段C)总体设计﹑详细设计﹑编程调试 D)需求分析﹑功能定义﹑系统设计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分)请将每一空的正确答案写在答题卡[ 11 ]~[ 15 ]序号的横线上,答在试卷上不得分.1.常用的黑盒测试有等价分类法﹑[ 边值分析法 ]﹑因果图法和错误推测法4种.2.测试的目的的暴露错误,评价程序的可靠性;而[调试]的目的是发现错误的位置并改正错误.3.软件维护活动包括以下几类:改正性维护﹑适应性维护﹑[ 完善性 ]维护和预防性维护.4.在面向对象的设计中,用来请求对象执行某一处理或回答某些信息的要求称为[ 消息 ].5.关键字ASC和DESC分别表示[ 升序排列和降序排列 ]的含义.模拟测试九一.选择题(每小题2分)在下列各题的A),B)C),D)4个选项中,只有1个选项是正确的,1.最简单的交换排序方法是( D )A)快速排序 B)选择排序 C)堆排序 D)冒泡排序2.栈通常采用的两种存储结构是( A )A.线性存储结构和链表存储结构B.列方式和索引方式C.表存储结构和数组D.线行存储结构和非线性存储结构3.线性表的顺序存储结构和线性表的链式存储结构分别是(B)A)顺序存储的存储结构、顺序结构的存储结构B)随机存储的存储结构、顺序存储的存储结构C)随机存储的存储结构、随机存取的存储结构D)任意存储的存储结构、任意存储的存储结构4.完全不考虑程序的内部结构和内部特征,而只是根据程序功能导出测试用例的方法是( A ) A)黑盒测试法 B)白盒测试法 C)错误推测法 D)安装测试法5.在结构化设计方法中,生成的结构图(SC)中,带有箭头的连线表示( A )A)模块之间的调用关系 B)程序的组成成分C)控制程序的执行顺序 D)数据的流向6.下列选项中,不属于模块间耦合的是( C )A)数据耦合 B)同构耦合 C)异构耦合 D)公用耦合7.一个关系中属性个数为1时,称此关系为( C )A)对应关系 B)单一关系 C)一元关系 D)二元关系8.为用户与数据库系统提供接口的语言是( C )A)高级语言 B)数据描述语言(DDL) C)数据操纵语言(DML) D)汇编总汇9.相对于数据库系统,文件系统的主要缺陷有数据关联差、数据数据不一致性和(D)A)可重用性差 B)安全性差 C)非持久性 D)冗余性10.需求分析阶段的任务是确定( D )A)软件开发方法 B)软件开发工具 C)软件开发费用 D)软件系统功能二.填空题(每空2分)请将每一空的正确答案写在答题卡[ 11 ]~[ 15 ]序号的横线上,答在试卷上不得分.1.栈和队列通常采用的存储结构[ 链式存储和顺序存储 ]。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机二级考试试题二级公共基础复习题一、选择题(1) 下面叙述正确的是(C)A. 算法的执行效率与数据的存储结构无关B. 算法的空间复杂度是指算法程序中指令(或语句)的条数C. 算法的有穷性是指算法必须能在执行有限个步骤之后终止D. 以上三种描述都不对(2) 以下数据结构中不属于线性数据结构的是(C)A. 队列B. 线性表C. 二叉树D. 栈(3) 在一棵二叉树上第5层的结点数最多是(B) 注:由公式2k-1得A. 8B. 16C. 32D. 15(4) 下面描述中,符合结构化程序设计风格的是(A)A. 使用顺序、选择和重复(循环)三种基本控制结构表示程序的控制逻辑B. 模块只有一个入口,可以有多个出口C. 注重提高程序的执行效率D. 不使用goto语句(5) 下面概念中,不属于面向对象方法的是 (D) 注:P55-58A. 对象B. 继承C. 类D. 过程调用(6) 在结构化方法中,用数据流程图(DFD)作为描述工具的软件开发阶段是(B)A. 可行性分析B. 需求分析C. 详细设计D. 程序编码(7) 在软件开发中,下面任务不属于设计阶段的是(D)A. 数据结构设计B. 给出系统模块结构C. 定义模块算法D. 定义需求并建立系统模型(8) 数据库系统的核心是(B)A. 数据模型B. 数据库管理系统C. 软件工具D. 数据库(9) 下列叙述中正确的是(C)A.数据库是一个独立的系统,不需要操作系统的支持B.数据库设计是指设计数据库管理系统C.数据库技术的根本目标是要解决数据共享的问题D.数据库系统中,数据的物理结构必须与逻辑结构一致(10) 下列模式中,能够给出数据库物理存储结构与物理存取方法的是(A) 注:P108A. 内模式B. 外模式C. 概念模式D. 逻辑模式(11) 算法的时间复杂度是指(C)A. 执行算法程序所需要的时间B. 算法程序的长度C. 算法执行过程中所需要的基本运算次数D. 算法程序中的指令条数(12) 算法的空间复杂度是指(D)A. 算法程序的长度B. 算法程序中的指令条数C. 算法程序所占的存储空间D. 算法执行过程中所需要的存储空间(13) 设一棵完全二叉树共有699个结点,则在该二叉树中的叶子结点数为(B) 注:利用公式n=n0+n1+n2、n0=n2+1和完全二叉数的特点可求出A. 349B. 350C. 255D. 351(14) 结构化程序设计主要强调的是(B)A.程序的规模B.程序的易读性C.程序的执行效率D.程序的可移植性(15) 在软件生命周期中,能准确地确定软件系统必须做什么和必须具备哪些功能的阶段是(D) 注:即第一个阶段A. 概要设计B. 详细设计C. 可行性分析D. 需求分析(16) 数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
下列图符名标识的图符不属于数据流图合法图符的是(A) 注:P67A. 控制流B. 加工C. 数据存储D. 源和潭(17) 软件需求分析阶段的工作,可以分为四个方面:需求获取、需求分析、编写需求规格说明书以及(B) 注:P66A. 阶段性报告B. 需求评审C. 总结D. 都不正确(18) 下述关于数据库系统的叙述中正确的是(A)A. 数据库系统减少了数据冗余B. 数据库系统避免了一切冗余C. 数据库系统中数据的一致性是指数据类型的一致D. 数据库系统比文件系统能管理更多的数据(19) 关系表中的每一横行称为一个(A)A. 元组B. 字段C. 属性D. 码(20) 数据库设计包括两个方面的设计内容,它们是(A)A. 概念设计和逻辑设计B. 模式设计和内模式设计C. 内模式设计和物理设计D. 结构特性设计和行为特性设计(21) 下列叙述中正确的是(A)A. 线性表是线性结构B. 栈与队列是非线性结构C. 线性链表是非线性结构D. 二叉树是线性结构(22) 下列关于栈的叙述中正确的是(D)A. 在栈中只能插入数据B. 在栈中只能删除数据C. 栈是先进先出的线性表D. 栈是先进后出的线性表(23) 下列关于队列的叙述中正确的是(C)A. 在队列中只能插入数据B. 在队列中只能删除数据C. 队列是先进先出的线性表D. 队列是先进后出的线性表(24) 对建立良好的程序设计风格,下面描述正确的是(A) 注:P48A. 程序应简单、清晰、可读性好B. 符号名的命名要符合语法C. 充分考虑程序的执行效率D. 程序的注释可有可无(25) 下面对对象概念描述错误的是(A) 注:P55A. 任何对象都必须有继承性B. 对象是属性和方法的封装体C. 对象间的通讯靠消息传递D. 操作是对象的动态性属性(26) 下面不属于软件工程的3个要素的是(D) 注:P62A. 工具B. 过程C. 方法D. 环境(27) 程序流程图(PFD)中的箭头代表的是(B) 注:P81A. 数据流B. 控制流C. 调用关系D. 组成关系(28) 在数据管理技术的发展过程中,经历了人工管理阶段、文件系统阶段和数据库系统阶段。
其中数据独立性最高的阶段是(A)A. 数据库系统B. 文件系统C. 人工管理D. 数据项管理(29) 用树形结构来表示实体之间联系的模型称为(B)A. 关系模型B. 层次模型C. 网状模型D. 数据模型(30) 关系数据库管理系统能实现的专门关系运算包括(B)A. 排序、索引、统计B. 选择、投影、连接C. 关联、更新、排序D. 显示、打印、制表(31) 算法一般都可以用哪几种控制结构组合而成(D) 注:P3A. 循环、分支、递归B. 顺序、循环、嵌套C. 循环、递归、选择D. 顺序、选择、循环(32) 数据的存储结构是指(B) 注:P13,要牢记A. 数据所占的存储空间量B. 数据的逻辑结构在计算机中的表示C. 数据在计算机中的顺序存储方式D. 存储在外存中的数据(33) 设有下列二叉树:图见书P46对此二叉树中序遍历的结果为(B)A. ABCDEFB. DBEAFCC. ABDECFD. DEBFCA(34) 在面向对象方法中,一个对象请求另一对象为其服务的方式是通过发送(D) 注:P56A. 调用语句B. 命令C. 口令D. 消息(35) 检查软件产品是否符合需求定义的过程称为(A) 注:P95A. 确认测试B. 集成测试C. 验证测试D. 验收测试(36) 下列工具中属于需求分析常用工具的是(D) 注:P67A. PADB. PFDC. N-SD. DFD(37) 下面不属于软件设计原则的是(C) 注:P73A. 抽象B. 模块化C. 自底向上D. 信息隐蔽(38) 索引属于(B)A. 模式B. 内模式C. 外模式D. 概念模式(39) 在关系数据库中,用来表示实体之间联系的是(D)A. 树结构B. 网结构C. 线性表D. 二维表(40) 将E-R图转换到关系模式时,实体与联系都可以表示成(B)A. 属性B. 关系C. 键D. 域(41) 在下列选项中,哪个不是一个算法一般应该具有的基本特征(C)A. 确定性B. 可行性C. 无穷性D. 拥有足够的情报(42) 希尔排序法属于哪一种类型的排序法(B)A.交换类排序法B.插入类排序法C.选择类排序法D.建堆排序法(43) 在深度为5的满二叉树中,叶子结点的个数为(C)A. 32B. 31C. 16D. 15(44) 对长度为N的线性表进行顺序查找,在最坏情况下所需要的比较次数为(B) 注:要牢记A. N+1B. NC. (N+1)/2D. N/2(45) 信息隐蔽的概念与下述哪一种概念直接相关(B) 注:P74A.软件结构定义B. 模块独立性C. 模块类型划分D. 模拟耦合度(46) 面向对象的设计方法与传统的的面向过程的方法有本质不同,它的基本原理是(C)A. 模拟现实世界中不同事物之间的联系B. 强调模拟现实世界中的算法而不强调概念C. 使用现实世界的概念抽象地思考问题从而自然地解决问题D. 鼓励开发者在软件开发的绝大部分中都用实际领域的概念去思考(47) 在结构化方法中,软件功能分解属于下列软件开发中的阶段是(C) 注:总体设计也就是概要设计A. 详细设计B. 需求分析C. 总体设计D. 编程调试(48) 软件调试的目的是(B) 注:与软件测试要对比着复习A.发现错误B.改正错误C.改善软件的性能D.挖掘软件的潜能(49) 按条件f对关系R进行选择,其关系代数表达式为(C)A. R|X|RB. R|X|RfC. бf(R)D. ∏f(R)(50) 数据库概念设计的过程中,视图设计一般有三种设计次序,以下各项中不对的是(D) 注:P127,要牢记A. 自顶向下B. 由底向上C. 由内向外D. 由整体到局部(51) 在计算机中,算法是指(C)A. 查询方法B. 加工方法C. 解题方案的准确而完整的描述D. 排序方法(52) 栈和队列的共同点是(C) 注:这一共同点和线性表不一样A. 都是先进后出B. 都是先进先出C. 只允许在端点处插入和删除元素D. 没有共同点(53) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是(A) 注:P38,前提要掌握三种遍历的方法A. cedbaB. acbedC. decabD. deabc(54) 在下列几种排序方法中,要求内存量最大的是(D) 注:要牢记,书中没有提到。
A. 插入排序B. 选择排序C. 快速排序D. 归并排序(55) 在设计程序时,应采纳的原则之一是(A) 注:和设计风格有关A. 程序结构应有助于读者理解B. 不限制goto语句的使用C. 减少或取消注解行D. 程序越短越好(56) 下列不属于软件调试技术的是(B) 注:P98A. 强行排错法B. 集成测试法C. 回溯法D. 原因排除法(57)下列叙述中,不属于软件需求规格说明书的作用的是(D)注:P71A. 便于用户、开发人员进行理解和交流B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据C. 作为确认测试和验收的依据D. 便于开发人员进行需求分析(58) 在数据流图(DFD)中,带有名字的箭头表示(C)A. 控制程序的执行顺序B. 模块之间的调用关系C. 数据的流向D. 程序的组成成分(59) SQL语言又称为(C)A. 结构化定义语言B. 结构化控制语言C. 结构化查询语言D. 结构化操纵语言(60) 视图设计一般有3种设计次序,下列不属于视图设计的是(B)A. 自顶向下B. 由外向内C. 由内向外D. 自底向上(61) 数据结构中,与所使用的计算机无关的是数据的(C)A. 存储结构B. 物理结构C. 逻辑结构D. 物理和存储结构(62) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是(D)A. ABCEDB. DBCEAC. CDABED. DCBEA(63) 线性表的顺序存储结构和线性表的链式存储结构分别是(B)A. 顺序存取的存储结构、顺序存取的存储结构B. 随机存取的存储结构、顺序存取的存储结构 C. 随机存取的存储结构、随机存取的存储结构 D. 任意存取的存储结构、任意存取的存储结构(64) 在单链表中,增加头结点的目的是(A)A. 方便运算的实现B. 使单链表至少有一个结点C. 标识表结点中首结点的位置D. 说明单链表是线性表的链式存储实现(65) 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指(B) 注:P73A. 模块间的关系B. 系统结构部件转换成软件的过程描述C. 软件层次结构D. 软件开发过程(66) 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为(B) 注:P82A. PAD图B. N-S图C. 结构图D. 数据流图(67) 数据处理的最小单位是(C) 注:数据项不可再分割A. 数据B. 数据元素C. 数据项D. 数据结构(68) 下列有关数据库的描述,正确的是(C) 注:P102A. 数据库是一个DBF文件B. 数据库是一个关系C. 数据库是一个结构化的数据集合D. 数据库是一组文件(69) 单个用户使用的数据视图的描述称为(A) 注:P108A. 外模式B. 概念模式C. 内模式D. 存储模式(70) 需求分析阶段的任务是确定(D)A. 软件开发方法B. 软件开发工具C. 软件开发费用D. 软件系统功能(71) 算法分析的目的是(D) 注:书中没有总结,但要牢记A. 找出数据结构的合理性B. 找出算法中输入和输出之间的关系C. 分析算法的易懂性和可靠性D. 分析算法的效率以求改进(72)链表不具有的特点是(B)A.不必事先估计存储空间B.可随机访问任一元素C.插入删除不需要移动元素D.所需空间与线性表长度成正比(73) 已知数据表A中每个元素距其最终位置不远,为节省时间,应采用的算法是(B)A. 堆排序B. 直接插入排序C. 快速排序D. 直接选择排序(74) 用链表表示线性表的优点是(A) 注:因为不需要移动元素A. 便于插入和删除操作B. 数据元素的物理顺序与逻辑顺序相同C. 花费的存储空间较顺序存储少D. 便于随机存取(75) 下列不属于结构化分析的常用工具的是(D) 注:P67A. 数据流图B. 数据字典C. 判定树D. PAD图(76) 软件开发的结构化生命周期方法将软件生命周期划分成(A)A. 定义、开发、运行维护B. 设计阶段、编程阶段、测试阶段C. 总体设计、详细设计、编程调试D. 需求分析、功能定义、系统设计(77) 在软件工程中,白箱测试法可用于测试程序的内部结构。