2022年职业考证-软考-软件设计师考试全真模拟易错、难点剖析AB卷(带答案)试题号:88

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

2022年职业考证-软考-软件设计师考试全真模拟易错、难点剖析AB
卷(带答案)
一.综合题(共15题)
1.
单选题
二叉树的高度是指其层数,空二叉树的高度为0,仅有根结点的二叉树高度为1,若某二叉树中共有1024个结点,则该二叉树的高度是整数区间()中的任一值。

问题1选项
A.(10, 1024)
B.[10, 1024]
C.(11, 1024)
D.[11, 1024]
【答案】D
【解析】本题考查关于二叉树的构造问题。

根据题干描述,空二叉树的高度为0,仅有根结点的二叉树高度为1,当若某二叉树中共有1024个结点,求其取值范围?
我们不妨求出取值范围的极限值,当1024个结点都为根结点的时候,表示1024个二叉树高度为1,高度累计为1024,区间能够取到1024,属于闭区间,排除A,C
再求出其最小值的情况,最小值应该是按照满二叉树进行排列,对于二叉树的规律如下:第一层的结点树2^0=1,第二层2^1=2,第3层2^2=4,依次类推。

对于1024而言,2^10=1024,所以我们不能取到11层,应该先到第10层2^9=512,此时10层共累计的节点有:2^0+2^1+...+2^9=1023,共有1024还缺少1个结点,只能存放到第11层,第11层仅有1个结点,但是它的层次已经到了11层,所以能取到11,属于闭区间,排除B选项,故表达式取值范围应该是[11, 1024]。

2.
单选题
以编译方式翻译C/C++源程序的过程中,类型检查在()阶段处理
问题1选项A.词法分析
B.语义分析
C.语法分析
D.目标代码生成
【答案】B
【解析】词法分析阶段处理的错误:非法字符、单词拼写错误等。

语法分析阶段处理的错误:标点符号错误、表达式中缺少操作数、括号不匹配等有关语言结构上的错误。

静态语义分析阶段(即语义分析阶段)处理的错误:运算符与运算对象类型不合法等错误。

本题选择语义错误。

目标代码生成(执行阶段)处理的错误:动态语义错误,包括陷入死循环、变量取零时做除数、引用数组元素下标越界等错误等。

3.
单选题
以下关于散列表(哈希表),及其查找特点的叙述中,正确的是()。

问题1选项
A.在散列表中进行查找时,只需要与待查找关键字及其同义词进行比较
B.只要散列表的装填因子不大于1/2,就能避免冲突
C.用线性探测法解决冲突容易产生聚集问题
D.用链地址法解决冲突可确保平均查找长度为1
【答案】C
4.
单选题
数据库中的视图是一个虚拟表。

若设计师为user表创建一个user1视图,那数据字典中保存的是()。

问题1选项
er1查询语句
er1视图定义
er1查询结果
D.所引用的基本表的
【答案】B
【解析】本题考查的是视图相关概念。

视图在数据字典中保存的是视图定义。

本题选择B选项。

5.
单选题
如下图如下E-R图中,两个实体R1、R2之间有一个联系E,当E的类型为()时必须将E 转换成—个独立的关系模式?
问题1选项
A.1:1
B.1:*
C.*:1
D.*: *
【答案】D 【解析】本题考查的是E-R转换为关系模式的转换规则。

其中1:1和1:*类型的联系可以归并到实体中,而 *:*联系必须单独转换为1个独立的关系模式。

本题选择D选项。

6.
单选题
采用三级模式结构的数据库系统中,如果对一个表创建聚簇索引,那么改变的是数据库的()。

问题1选项
A.外模式
B.模式
C.内模式
D.用户模式
【答案】C
【解析】本题考查数据库三级模式两级映射。

对于三级模式,分为外模式,模式和内模式。

其中外模式对应视图级别,是用户与数据库系统的接口,是用户用到那部分数据的描述,比如说:用户视图;对于模式而言,又叫概念模式,对于表级,是数据库中全部数据的逻辑结构和特质的描述,由若干个概念记录类型组成,只涉及类型的描述,不涉及具体的值;而对于内模式而言,又叫存储模式,对应文件级,是数据物理结构和存储方式的描述,是数据在数据库内部表示的表示方法,定义所有内部的记录类型,索引和文件的组织方式,以及数据控制方面的细节。

例如:B树结构存储,Hash方法存储,聚簇索引等等。

7.
案例题
回答问题1至问题4,将解答填入答题纸的对应栏内
【说明】
某汽车维修公司为了便于管理车辆的维修情况,拟开发一套汽车维修管理系统,请根据下述需求描述完成该系统的数据库设计。

【需求描述】
(1)客户信息包括:客户号、客户名、客户性质、折扣率、联系人、联系电话。

客户性质有个人或单位。

客户号唯一标识客户关系中的每一个元组。

(2)车辆信息包括:车牌号、车型、颜色和车辆类别。

一个客户至少有一辆车,一辆车只属于一个客户。

(3)员工信息包括:员工号、员工名、岗位、电话、家庭住址。

其中,员工号唯一标识员工关系中的每一个
元组。

岗位有业务员、维修工、主管。

业务员根据车辆的故障情况填写维修单。

(4)部门信息包括:部门号、名称、主管和电话,其中部门号唯一确定部门关系的每一个元组。

每个部门只有一名主管,但每个部门有多名员工,每名员工只属于一个部门。

(5)维修单信息包括:维修单号、车牌号、维修内容、工时。

维修单号唯一标识维修单关系中的每一个元组。

一个维修工可接多张维修单,但一张维修单只对应一个维修工。

【概念模型设计】根据需求阶段收集的信息,设计的实体联系图(不完整)如图2-1所示
【逻辑结构设计】
根据概念模型设计阶段完成的实体联系图,得出如下关系模式(不完整):
客户(客户号,客户名,(a),折扣率,联系人,联系电话)
车辆(车牌号,(b),车型,颜色,车辆类别)
员工(员工号,员工名,岗位,(c),电话,家庭住址)
部门(部门号,名称,主管,电话)
维修单(维修单号,(d),维修内容,工时)
【问题1】(6分)
根据问题描述,补充3个联系,完善图2-1的实体联系图。

联系名可用联系1、联系2和联系3代替,联系的类型为1:1、1:n和m:n(或1:1、1:*和*.*)。

【问题2】(4分)
根据题意,将关系模式中的空(a)~(d)的属性补充完整,并填入答题纸对应的位置上。

【问题3】(2分)
分别给出车辆关系和维修单关系的主键与外键。

【问题4】(3分)
如果一张维修单涉及多项维修内容,需要多个维修工来处理,那么哪个联系类型会发生何种变化?你认为应该如何解决这一问题?
【答案】【问题1】(6分)
联系1:客户和车辆:1:n
联系2:部门和员工:1:n
联系3:维修工和维修单:1:n
【问题2】(4分) a:客户性质 b:客户号c:部门号d:车牌号,员工号
【问题3】(2分)
车辆关系的主键:车牌号外键:客户号
维修单关系的主键:维修单号外键:车牌号,员工号
【问题4】(3分)
维修工和维修单之间的联系类型会发生变化,从1:n变成m:n。

对应的需要增加维修关系,m:n需要不能归并,需要将其单独加入一个联系中,将维修单的属性员工号(维修工)删掉,新建一个关系模式维修。

维修(员工号(维修工),维修单号,维修地点,维修时间)
【解析】问题1:补充实体联系图,根据题干描述,进行补充。

根据题干描述:“一个客户至少有一辆车,一辆车只属于一个客户”,可知客户与车辆的联系为客户和车辆:1:n;根据“但每个部门有多名员工,每名员工只属于一个部门。

”得知部门与员工的联系为部门和员工:1:n;根据“一个维修工可接多张维修单,但一张维修单只对应一个维修工。

”维修工与维修单的联系为维修工和维修单:1:n。

问题2:补充相关关系的属性。

结合E-R转换为关系模式的三种原则和题干补充关系属性。

a空,根据题干描述“客户信息包括:客户号、客户名、客户性质、折扣率、联系人、联系电话。

”,可知缺失属性客户性质,由于其与车辆为1:n,没有相对应的归并过程,应该将1端的主键客户号加入到车辆关系中。

所以a空填写客户性质;
b空,根据题干描述“车辆信息包括:车牌号、车型、颜色和车辆类别”,与关系模式对比,没有缺少,缺失的应该是上方提到的将1端的主键客户号加入到车辆关系中,所以b空应该填写车辆号;
c空,根据题干描述“员工信息包括:员工号、员工名、岗位、电话、家庭住址。

”与关系模式相比,没有缺失,根据第一问得知,存在部门与员工的1:n关系,应该将部门的主键部门号归并到员工信息中,故c空应该填写部门号;
d空,根据题干描述“维修单信息包括:维修单号、车牌号、维修内容、工时。

”对比发现缺失车牌号属性,其次在问题1中提到维修工和维修单存在1:n的联系,应该将维修工的主键归并到维修单信息中,可以填写维修工,员工号,或维修员工号都可以。

d空填写车牌号,员工号。

问题3:找出对应的主外键,结合E-R转换为关系模式的三种原则和题干给出的信息找出主、外键。

对于车辆关系而言,主键应该应该为多端车牌号,车牌号唯一标识主键。

外键为归并过来的客户主键客户号。

对于维修单关系而言,主键应该为唯一标识的维修单号,外键为归并过来的车牌号和员工号。

问题4:如果一张维修单涉及多项维修内容,需要多个维修工来处理,应该将前面维修单与维修工的比值1:n变成m:n,对应的需要增加维修关系,m:n需要不能归并,需要将其单独加入一个联系中,将维修单的属性员工号(维修工)删掉,新建一个关系模式维修。

维修(员工号(维修工),维修单号,维修地点,维修时间)
8.
单选题
对高级程序语言进行编译的过程中,使用()来记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成。

问题1选项
A.决策表
B.符号表
C.广义表
D.索引表.
【答案】B
【解析】考查分析语义分析阶段相关问题。

语义分析阶段主要是分析各语法结构的含义,检查源程序是否包含静态语义错误,并收集类型信息提供后面的代码生成阶段使用。

在确认源程序的语法和语义后,可以对其进行翻译并给出源程序的内部表示。

对于声明语句,需要记录所遇到的符号的信息,所以应该进行符号表的填查工作,用来记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成。

至于决策表是用于测试的,广义表是针对数据结构的表示,索引表是数据库中指示逻辑和物理记录对应的关系。

9.
单选题
下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示活动,边上的权重表示完成该活动所需要的时间(天),则活动()不在关键路径上。

活动BI和EG的松弛时间分别是()。

问题1选项
A.BD
B.BI
C.GH
D.KL
问题2选项
A.0和1
B.1和0
C.0和2
D.2和0
【答案】第1题:B
第2题:B
【解析】考查项目管理计算问题。

对于关键路径有两条分别是:ABDIJKL和AEGHKL两条关键路径,长度为20.
针对第一问,不在关键路径上的活动是BI,其余的BD,GH,KL都在关键路径上。

针对第二问,要求BI和EG的松弛时间,BI活动通过的路径有两条ABIJKL和ABIJL,其中两条路径的长度都为19,(如果有两条不同的路径应该选择最大的一条),用关键路径减去该路径的长度20-19=1,表示该活动的松弛时间。

活动EG位于该关键路径AEGHKL上,没办法延误,即松弛时间为0
10.
单选题
根据《计算机软件保护条例》的规定,对软件著作权的保护不包括()。

问题1选项
A.目标程序
B.软件文档
C.源程序
D.开发软件所有的操作方法
【答案】D
【解析】《计算机软件保护条例》保护的是软件程序以及文档,其中软件程序包括源程序和目标程序。

开发软件所用的思想、处理过程、操作方法或者数学概念不受软件著作权保护。

本题选择D选项。

11.
单选题
排序算法的稳定性是指将待排序列排序后,能确保排序码中的相对位置保持不变。

()是稳定的排序算法。

问题1选项
A.冒泡排序
B.快速排序
C.堆排序
D.简单选择排序
【答案】A
【解析】本题考查常见算法的应用。

将待排序列排序后,能确保排序码中的相对位置保持不变指的是稳定性排序,本题中只有冒泡排序是稳定的排序,快速排序、堆排序、简单选择排序都是不稳定排序。

本题选择A选项。

12.
单选题
对有向图G进行拓扑排序得到的拓扑序列中,顶点Vi在顶点Vj之前,则说明G中()
问题1选项
A.一定存在有向弧
B.一定不存在有向弧
C.必定存在从Vi到Vj的路径
D.必定存在从Vj到Vi的路径
【答案】B
【解析】本题考查拓扑序列的相关问题。

对于拓扑序列,需要按照有向弧的指向,明确其先后顺序,例如:存在一条Vi指向Vj的有向弧,那么在拓扑序列中Vi需要写出Vj前面,其次对于属于同一层次或者毫无关联的两个结点可以不用在意先后顺序。

根据题干描述,对有向图G进行拓扑排序得到的拓扑序列中,顶点Vi在顶点Vj之前,我们试着对以下选项进行分析:
A、一定存在有向弧,说法错误,不一定存在,Vi和Vj可以是并列的,并不一定要存在Vi到Vj的有向弧。

B、一定不存在有向弧,说法正确,如果存在有向弧,那么Vj是需要在顶点Vi之前的,则与题干相悖,
所以必定不存在。

C、必定存在从Vi到Vj的路径,说法错误,不一定存在,Vi和Vj可以是两个毫无关联没有指向的关系,不会存在相关的路径。

D、必定存在从Vj到Vi的路径,说法错误,如果存在Vj到Vi的路径,Vj就会出现在Vi前面
13.
单选题
下图所示为一个非确定有限自动机(NFA),S0为初态,S3为终态。

该NFA识别的字符串()。

问题1选项
A.不能包含连续的字符“0”
B.不能包含连续的字符“1”
C.必须以“101”开头
D.必须以“101”结尾
【答案】D
【解析】本题考查NFA有限自动机相关问题。

针对这类问题,可以采取找出对应反例的形式表示。

S0是初态,S3是终态,识别出从S0为初态到S3为终态的路径。

可以看到无论如何到达S3终态都需要经过S1-S2,即末尾必须存在”101“结尾的。

对于A和B选项不能包含连续字符的”0“和“1”,我们可以看到在S0初态中,有1个字符串0和1自循环,是可以包含连续的”0“和”1“的,所以错误。

对于C选项必须以“101”开头,说法错误,可以任意10的字符开头。

14.
单选题
甲、乙两互联网公司于2020年7月7日就各自开发的库存管理软件分别申请“宏达”和“鸿达”商标注册,两个库存管理软件相似,甲第一次使用时间为2019年7月,乙第一次使用时间为2019年5月,此情景下,()能获准注册。

问题1选项
A.“宏达”
B.“宏达”和“鸿达”均
C.由甲、乙协商哪个
D.“鸿达”
【答案】D
【解析】本题考查的是商标权确定知识产权人的过程。

根据我国《中华人民共和国商标法》第三十一条两个或者两个以上的商标注册申请人,在同一种商品或者类似商品上,以相同或者近似的商标申请注册的,初步审定并公告申请在先的商标;同一天申请的,初步审定并公告使用在先的商标,驳回其他人的申请,不予公告。

即首先第一原则是,谁先申请谁获得,本题中甲乙双方于2020年7月7日申请注册,属于同时申请。

其次,同时申请时,谁先使用谁获得,根据题干甲于2019年7月使用,乙于2019年5月使用,乙先使用,因此最终成功注册是乙的“鸿达”商标。

本题选择D选项。

如果无法区分谁先使用,则协商归属,协商不成可以抽签决定。

15.
单选题
进行面向对象系统设计时,在包的依赖关系图中不允许存在环,这属于()原则。

问题1选项
A.单一责任
B.无环依赖
C.依赖倒置
D.里氏替换
【答案】B
【解析】本题考查的是面向对象设计原则相关内容。

单一责任原则:设计目的单一的类。

无环依赖原则:在包的依赖关系图中不允许存在环,即包之间的结构必须是一个直接的无环图形。

本题描述的是B选项。

依赖倒置原则:要依赖于抽象,而不是具体实现;针对接口编程,不要针对实现编程。

里氏替换原则:子类可以替换父类。

相关文档
最新文档