荟萃馆

位置:首页 > 计算机 > 计算机二级

2017年9月计算机二级公共基础知识模拟试题

通过试题练习能够帮助考生们更好地备考,可以更好的掌握知识点。下面是小编分享的2017年9月计算机二级公共基础知识模拟试题,欢迎大家练习!

2017年9月计算机二级公共基础知识模拟试题

A. 查询方法

B. 加工方法

C. 解题方案准确而完整的描述

D. 排序方法

[答案]C

[考点]数据结构与算法

[评析]

A、B、D都过于片面,此题直接选答案也很简单。

(2) 栈和队列的共同点是______。

A. 都是先进后出

B. 都是先进先出

C. 只允许在端点处插入和删除元素

D. 没有共同点

[答案]C

[考点]数据结构与算法

[评析]

栈是先进后出的,队列是先进先出的,共同点是只允许在端点处插入和删除元素。栈都是在一端进与出,而队列是在一端进在另一端出。

(3) 已知二叉树后序遍历序列是dabec,中序遍历序列是debac,它的前序遍历序列是______。

A. cedba

B. acbed

C. decab

D. deabc

[答案]A

[考点]数据结构与算法

[评析]

后序又叫后根,一次递归过程是先左再右最后根;中序是先左再根最后右。

比如下图:

前序是:abc

中序是:bac

后序是:bca

题中据后序遍历序列,一眼得知c结点是根,那么据中序deba结点都在一边,或都在根结点左边,或右边;据中序遍历序列得知全在根结点的左边。

接下来据后序得出e结点是紧挨着c结点的左子女,再据中序得知d是e的左子女,ba是右子树。

再据后序得b是e的右子女,再据中序得a是b的右子女。

分析结果得二叉树图示如下:

因为我茂叶数据结构是自学的,分析此类型的题我都是用自己的方法(递归分析的方法),要边分析边画图,一步一步连结起来,最后再根据题中的遍历检查图是否画对,如果都符合题目,最后再可根据图来得所求的遍历。

再次声明,此所有二级公基题全是我一人的思路写的,如果你觉得不可靠,可以看其它的书。

(4) 在下列几种排序方法中,要求内存量最大的是______。

A. 插入排序

B. 选择排序

C. 快速排序

D. 归并排序

[答案]D

[考点]数据结构与算法

[分析]

我们对比一个排序方法的优越性有"平均时间"、"最坏情况时间"和"辅助空间"。其中辅助空间一般是排序中需要额外的内存开销,这些内存开销一般据一些如中间变量(暂存变量)、比较与交换等等来决定。

插入排序和选择排序的辅助空间都是o(1),快速排序是o(nlog2n),归并排序是o(n)。

可知归并排序要求内存量最大,我们也可以从其变量及循环个数也以看出归并排序要求内存量最大。

(5) 在设计程序时,应采纳的原则之一是______。

A. 程序结构应有助于读者理解

B. 不限制goto语句的使用

C. 减少或取消注解行

D. 程序越短越好

[答案]A

[考点]程序设计基础

[评析]

前面的题中已解释过,二级的各种程序设计语言教程都会对结构化程序设有一定的介绍,比如goto语句的限制使用,基本上每本书上都会提到。

其中A,即易读性比程序的效率更显得重要,这是结构化程序设计原则提倡的,也是我们进行开发时非常重要的一点。

(6) 下列不属于软件调试技术的是______。

A. 强行排错法

B. 集成测试法

C. 回溯法

D. 原因排除法

[答案]B

[考点]软件工程基础

[评析]

我们严格区分调试与测试,调试是已知有错误而来找错误,是被动的;测试有很多种,比如未发现错误但不能保证程序没错而来找BUG,还比如我们运行测试程序是否符合用户的要求,是主动的。不用说答案就是B了 :)

A、C、D都是具体的程序调试方法,而B是宏观的程序测试方法。

测试有单元测试、集成测试、确认测试、系统测试。比如我们在进行单元测试时,发现程序有错误,我们再可以根据A、C、D的方法来找错误。

题外话:

很多人学软件工程时认为软件工程太无聊了,似乎全部都是些背背记记的东西,但对于一个软件构架师,软件工程是非常重要的,这就不能是些背背的东西了,最重要的是理解,要彻底地理解,还得有些开发经验才行。《软件工程》这学科是从实践中得出来的,同样也需要赋予给实践中去,这样才有用!

(7) 下列叙述中,不属于软件需求规格说明书的作用的是______。

A. 便于用户、开发人员进行理解和交流

B. 反映出用户问题的结构,可以作为软件开发工作的基础和依据

C. 作为确认测试和验收的依据

D. 便于开发人员进行需求分析

[答案]D

[考点]软件工程基础

[评析]

A、B、C都是作用,D说法有一定的错误,开发人员包括很多,比如程序员的工作就不是进行需求分析。

(8) 在数据流图(DFD)中,带有名字的箭头表示______。

A. 控制程序的执行顺序

B. 模块之间的.调用关系

C. 数据的流向

D. 程序的组成成分

[答案]C

[考点]软件工程基础

[评析]

顾名思义,数据流图就是带有方框(外部实体)、圆圈(变换/加工)和带有名字的箭头以表示数据的流向。需求分析中常用的分析图,它远离计算机上的具体实现,软件人员和用户都能看懂,有益于和用户交流。

(9) SQL语言又称为______。

A. 结构化定义语言

B. 结构化控制语言

C. 结构化查询语言

D. 结构化操纵语言

[答案]C

[考点]数据库设计基础

[评析]

学VF和ACCESS的朋友轻而易举选出答案,考其它的朋友们若没学数据库技术这一章节,则要记一下了。

Structured Query Language

结构化 查询 语言(语句)

(10) 视图设计一般有3种设计次序,下列不属于视图设计的是______。

A. 自顶向下

B. 由外向内

C. 由内向外

D. 自底向上

[答案]B

[考点]数据库设计基础

[评析]

通常有如下几种方法:

1、自顶向下。先全局框架,然后逐步细化

2、自底向上。先局部概念结构,再集成为全局结构

3、由里向外。先核心结构,再向外扩张

4、混合策略。1与2相结合,先自顶向下设计一个概念结构的框架,再自底向上为框架设计局部概念结构 (11) 数据结构中,与所使用的计算机无关的是数据的______。

A. 存储结构

B. 物理结构

C. 逻辑结构

D. 物理和存储结构

[答案]C

[考点]数据结构与算法

[评析]

通过前面的一些题的解释,相信此题对大家也很简单了。

逻辑结构更接近人的思想,比如栈的先进后出的结构,这是逻辑结构,如果研究到了栈在内存中的结构,如地址、地址里的内容等等,这就是物理结构了,我们一般无须过于深入底层地钻研。

(12) 栈底至栈顶依次存放元素A、B、C、D,在第五个元素E入栈前,栈中元素可以出栈,则出栈序列可能是______。

A. ABCED

B. DBCEA

C. CDABE

D. DCBEA

[答案]D

[考点]数据结构与算法

[评析]

栈是先进后出的,因为在E放入前,A、B、C、D已经依次放进栈里了,故这四个元素出栈的顺序只能是D、C、B、A,E可是其中排序的任何位置,答案只有D符合了。

(13) 线性表的顺序存储结构和线性表的链式存储结构分别是______。

A. 顺序存取的存储结构、顺序存取的存储结构

B. 随机存取的存储结构、顺序存取的存储结构

C. 随机存取的存储结构、随机存取的存储结构

D. 任意存取的存储结构、任意存取的存储结构

[答案]B

[考点]数据结构与算法

[评析]

顺序存储结构可以以数组为例子,它在内存中的一片连续的储存空间,从第一个元素到最后一个元素,只要根据下标就可以访问。二级的各种程序设计语言都有。

链式存储结构可以以C/C++语言中的链表为例,各个链结点无须存放在一片连续的内存空间,而只需要指针变量指过来指过去,实现随机存取。

(14) 在单链表中,增加头结点的目的是______。

A. 方便运算的实现

B. 使单链表至少有一个结点

C. 标识表结点中首结点的位置

D. 说明单链表是线性表的链式存储实现

[答案]A

[考点]数据结构与算法 考试大(www.Examda。com)

[评析]

举个例子,假如我们写一个实现链表删除一个元素的函数(或过程),供共享用,函数的参数有2个,一个指针变量(指向链表的头结点),一个字符变量(待删除的元素)。通过链表头结点的指针传给函数的第一个指针变量参数,就可方便实现是哪一个链表的操作。

如果你考的科目没有指针,此题答案记一下就行了。

(15) 软件设计包括软件的结构、数据接口和过程设计,其中软件的过程设计是指______。

A. 模块间的关系

B. 系统结构部件转换成软件的过程描述

C. 软件层次结构

D. 软件开发过程

[答案]B

[考点]软件工程基础

[评析]

相当于详细设计,比如N-S图就是一种,它不用具体的某种语言实现,但描述了程序的思路,有了这就可以很轻松转换为某种语言的程序源代码。这是一种系统结构部件转换成软件的过程描述。

(16) 为了避免流程图在描述程序逻辑时的灵活性,提出了用方框图来代替传统的程序流程图,通常也把这种图称为______。

A. PAD图

B. N-S图

C. 结构图

D. 数据流图

[答案]B

[考点]软件工程基础

[评析]

二级科目的很多教程都在前N-S图的例子,比如C语言教程基本上都有,程序流程图大部分科目也有例子。这里再举个例子。

比如:

如果2等于3,则变量a=1,否则a=0。

我们用N-S图表示:

转换成VB:

If 2=3 Then

a=1

else

a=0

End If

转换成C/C++/JAVA:

if(2==3)

a=1;

else

a=0;

(17) 数据处理的最小单位是______。

A. 数据

B. 数据元素

C. 数据项

D. 数据结构

[答案]C

[考点]数据结构与算法

[评析]

此题比较弱智,本来无从解释。

"数据"过于宏观,比如数据库里的所有内容都可叫数据,它是不是数据处理的最小单位呢?

"数据元素"中的"元素",如果要死钻牛角尖,的确没"数据项"说得更合适。

"数据结构",这个范围又过于大了。

(18) 下列有关数据库的描述,正确的是______。

A. 数据库是一个DBF文件

B. 数据库是一个关系

C. 数据库是一个结构化的数据集合

D. 数据库是一组文件

[答案]C

[考点]数据库设计基础

[评析]

A错,比如ACCESS数据库的文件是mdb格式的。

B错,数据库里可能有很多个二维表,一个二维表就是一个关系。

D错,虽有些数据库底层是些文件组成的,但是从逻辑结构上来说它与文件完全是2个概念,数据库管理比文件管理更容易、效率更高、安全性更强。

(19) 单个用户使用的数据视图的描述称为______。

A. 外模式

B. 概念模式

C. 内模式

D. 存储模式

[答案]A

[考点]数据库设计基础

[评析]

外模式、模式(概念模式)、内模式(存储模式),分别是视图级、概念级、物理级。视图级即是用户使用的数据视图级,主要为局部逻辑结构,因为模式上很多个外模式,外模式到模式的映射定义了局部数据逻辑结构与全局逻辑结构之间的对应关系,表现了数据的逻辑独立性。模式到内模式则表现了数据物理独立性。

(20) 需求分析阶段的任务是确定______。

A. 软件开发方法

B. 软件开发工具

C. 软件开发费用

D. 软件系统功能

[答案]D

[考点]软件工程基础

[评析]

据前面的题的解释,相信大家对需求分析有个理性认识了。

分析员对用户的要求作出分析,并画出数据流程图,该图通俗易懂,不涉及到如何在计算机上实现,这是需求分析阶段,用户也参与,确定软件系统功能是一个重要的任务。