当前位置:   article > 正文

软件设计师-23年上半年-上午答案

软件设计师-23年上半年-上午答案

软件设计师-23年上半年-上午答案

1 ~ 10

1 计算机中,系统总线用于(1)连接

A. 接口和外设
B. 运算器,控制器和寄存器
C. 主存及外设部件
D. DMA控制器和中断控制器

答案:C

按连接部件不同,总线可分为:片内总线、系统总线、通信总线。
片内总线是芯片内部的总线,如CPU内部的总线。
系统总线是CPU、主存、I/O设备各大部件之间的信息传输线。
通讯总线用于计算机系统之间或与其他系统之间的通信。


2 在由高速缓存,主存和硬盘构成的三级存储体系中,CPU执行指令时需要读取数据,那么DMA控制器和中断CPPU发出的数据地址是(2)

A. 高速缓存地址
B. 主存物理地址
C. 硬盘的扇区地址
D. 虚拟地址

答案:B

在DMA控制方式下主存与高速I/O设备之间会有一条直接数据通路(DMA总线)。CPU向DMA接口发出“读/写”命令,并指明主存地址、磁盘地址、读写数据量等参数。DMA控制器自动控制磁盘与主存的数据读写,每完成一整块数据读写(如1KB为一整块),才向CPU发出一次中断请求。所以这里的主存地址是主存的物理地址。


3 设信息位是8位,用海明码来发现并纠正1位出错的情况,则校验位的位数至少为(3)

A. 1
B. 2
C. 4
D. 8

答案:B

设信息位为n位,校验位为k位,根据公式2k>=n+k+1,可得校验位的位数至少为4位。


4 中断向量提供的是(4)

A. 中断源的设备地址
B. 中断服务程序的入口地址
C. 传递数据的超始地址
D. 主程序的断点地址

答案:B

中断向量表用来保存各个中断源的中断服务程序的入口地址。当外设发出中断请求信号(INTR)以后,由中断控制器(INTC)确定其中断号,并根据中断号查找中断向量表来取得其中断服务程序的入口地址,同时INTC把中断请求信号提交给CPU。


5 计算机系统中,定点数常采用补码表示,以下关于补码表示的叙述中,错误的是(5)

A. 补码零的表示是唯一的
B. 可以将减法运算转化为加法运算
C. 符号位可以与数值位一起参加运算
D. 与真值的对应关系简单且直观

答案:D

负数的补码真值需要计算才能获得,无法直观对应。


6 设指令流水线将一条指令的执行分为取指,分析,执行三段,已知取指时间是2ns,分析时间需2ns。执行时间为1nS,则执行完1000条指令所需时间为(6)

A. 1004ns
B. 1998ns
C. 2003ns
D. 2008ns

答案:C

此题流水线周期为2ns,根据指令流水线执行时间公式:
(n-1)×流水线周期+一次指令执行完毕的时间=999×2+(2+2+1)=2003ns


7 在OSI参考模型中,负责对应用层消息进行压缩,加密功能的层次为(7)

A. 传输层
B. 会话层
C. 表示层
D. 应用层

答案:C

传输层负责数据通信,建立主机端到端的链接,为会话层和网络层提供端到端可靠的和透明的数据传输服务,确保数据能完整的传输到网络层。
会话层负责创建、管理和维护会话,接收来自传输层的数据,负责建立、管理和终止表示层实
体之间的通信会话,支持它们之间的数据交换。
表示层负责数据编码、格式转换、数据加密,提供各种用于应用层数据的编码和转换功能,确保一个系统的应用层发送的数据能被另一个系统的应用层识别。
应用层为计算机用户、各种应用程序以及网络提供接口,也为用户直接提供各种网络服务。


8-9 PKI体系中,由SSL/TSL实现HTTPS应用。浏览器和服务器之间用于加密HTTP消息的方式是(9)。如果服务器证书被撇销那么所产生的后果是(9)

A. 对方公钥+公钥加密
B. 本方公钥+公钥加密
C. 会话密钥+公钥加密
D. 会话密钥+对称加密
.
A. 服务器不能执行加解密
B. 服务器不能执行签名
C. 客户端无法再信任服务器
D. 客户端无法发送加密信息给服务器

答案:C C

在浏览器和服务器之间进行交互的过程中,浏览器会先用服务器的公钥(包含在权威机构发布的证书中)去验证服务器证书的合法性,这属于公钥加密技术。之后浏览器还会用这个技术加密浏览器端的对称密钥,发送服务端,在得到服务端返回的消息后(已用得到的浏览器密钥加密),用自己的对称密钥去解密拿到数据。即使用非对称密钥传输对称密钥

浏览器与服务器是通过权威机构颁发的证书去建立信任关系的,如果服务器的证书被撤销,则客户端无法信任服务器。


10 以下关于入侵防御系统功能的描述中,不正确的是(10)

A. 监测并分析用户和系统统的网络活动
B. 匹配特征库识别已知的网络功击行为
C. 联动入侵捡测系统使其阻断网络功击行为
D. 检测僵尸网络,木马控制等僵尸主机行为

答案:C

入侵防御系统是包含了入侵检查系统的功能,不需要联动入侵检查系统就能进行阻断操作。


11 ~ 20

11 web应用防火墙无法有效防止(11)

A. 登录口令暴力破解
B. 恶意注册
C. 抢票机器人
D. 流氓软件

答案:D

Web应用防护墙(Web Application Firewall,简称WAF)是通过执行一系列针对HTTP/HTTPS的安全策略来专门为Web应用提供保护的一款产品,主要用于防御针对网络应用层的攻击,像SQL注入、跨站脚本攻击、参数篡改、应用平台漏洞攻击、拒绝服务攻击等。流氓软件已经处于系统内部了,无法有效防止。


12 著作权中,(12)的保护期不受期限限制

A. 发表权
B. 发行权
C. 展览权
D. 署名权

答案:D

《著作权》规定的著作权保护期限为作者终生及其死亡后的五十年,截止于作者死亡后第五十年的12月31日,其中的署名权、修改权、保护作品完整权的保护期限不受限制。


13 国际上为保护计算机软件知识产权不受侵犯所采用的主要方式是实施(13)

A. 合同法
B. 物权法
C. 版权法
D. 刑法

答案:C

目前国际上普遍采用版权法来保护计算机软件知识产权不受侵犯。


14 以下关于计算机软件著作权的叙述中,不正确的是(14)

A. 软件著作权人可以许可他人行使其软件著作权,并有权获得报酬
B. 软件著作权人可以全部或者部分转让其软件著作权,并有权获得酬
C. 软件著作权属于自然人的,该自然人死亡后,在软件著作权的保期:、继承人能继承软件著作权的所有权力
D. 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等使用软件的,可以不经软件著作权人许可,不向其支付报酬

答案:C

根据《计算机软件保护条例》规定,软件著作权属于自然人的,该自然人死亡以后,在软件著作权的保护期内,软件著作权的继承人可以按照我国继承法的有关规定,继承计算机软件保护条例有关条款规定的除了署名权以外的其他权利,即财产权利。


15 以下关于计算机软件著作权的叙述中,不正确的是(15)

A. 对每一个基本加工,必须有一个加工规格说明
B. 加工规格说明必须描述把输入数据流变换为输出数据流的加工规则
C. 加工规格说明需要给出实现加工的细节
D. 决策树、决策表可以用来表示加工规格说明

答案:C

在数据流图中,加工的作用是描述 “输入数据流” 到 “输出数据流” 之间的变换 , 即对数据进行了什么样的处理 , 使得 “输入数据流” 变为 “输出数据流”。对每一个基本加工,必须有一个加工规格说明,加工规格说明主要目的是表达“做什么”而不是“怎么做”,也就是描述的是加工策略不是加工细节。


16 以下关于好的软件设计原则的叙述中,不正确的是(16)

A. 模块化
B. 提高模块独立性
C. 集中化
D. 提高抽象层次

答案:C

软件设计采用模块化的思想,模块化是指将一个待开发的软件分解成若干个小的简单部分,即模块,每个模块可独立地开发、测试,最后组装成完整的程序。这是一种复杂问题“分而治之”的原则。模块化的目的是使程序的结构清晰,容易阅读、理解、测试和修改。选项C的集中化正好跟模块化的思想是相反的。


17-18 下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示活动,则里程碑(17) 在关键路径上。关键路径长度为(18) 天

5
3
3
4
3
4
5
6
3
4
2
6
5
1
A
B
D
G
K
E
H
J
C
F
I

A. B
B. E
C. G
D. I
.
A. 15
B. 17
C. 19
D. 23

答案:B D

关键路径是指从开始节点到结束节点之间持续时间最长的路径,本题的关键路径是ACEHJK。里程碑E在关键路径上。


19 由8位成员组成的开发团队中,一共有(19)条沟通路径

A. 64
B. 56
C. 32
D. 28

答案:D

沟通路径公式:n×(n-1)/2=8×7/2=28


20 对布尔表达式"a or ((cb < c) and d)" 求值时,(20)时可进行短路计算

A. a为true
B. b为true
C. c为true
D. d为true

答案:A

当“and”前面为假时,“and”后面的不计算;“or”前面为真时,“or”后面的不计算。


21 ~ 30

21 设有正规式s=(0|10)*,则其所描述正规集中字符体的特点是(21)

A. 长度必须是偶数
B. 长度必须是奇数
C. 0不能连续出现
D. 1不能连续出现

答案:D

本题可以使用排除法解题,s=(0|10)*可以描述的字符包括0,10,00000,101010010等,所以选D。这里的“*\”代表“*”前面的部分(0或者10)可以出现0次或无数次。


22 设函数foo和hoo的定义如下图所示,在函数foo中调用函数hoo,hoo的第一个参数采用传引用方式。(call by reference),第二个参数传值方式(call by value),那么函数foo中的print(a,b)将输出(22)

hoo(int &x, int m) {
  m = x * m;
  x = m - 1;
  return;
}

foo() {
  int a = 8,b = 5;
  hoo(a, b);
  print(a, b);
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

A. 8,5
B. 39,5
C. 8,40
D. 39,40

答案:B

& 引用传递: hoo函数里边改变数值,foo函数中也相应修改
无& 值传递: hoo函数里边改变数值,foo函数中值不变


23 某文件管理系统采用位示图(bitmap)来记录磁盘的使用情况,若计算机系统的字长为64位,磁盘容量为512GB,物理块的大小为4MB,那么位示图的大小为(23)个字

A. 1024
B. 2048
C. 4096
D. 9600

答案:B

磁盘容量512GB,物理块4M,一共512GB/4MB=128K个物理块。字长64位,所以位示图的大小为128K/64=2K=2048个字。


24 磁盘调度分为移臂调度和旋转调度两类,在移臂调度的算法中,(23)算法可能会随时改变移动臂的运行方向

A. 单向扫描和先来先服务
B. 电梯调度和先来先服务
C. 电梯调度和最短寻道时间优先
D. 先来先服务和最短寻道时间优先

答案:D

先来先服务算法会根据进程请求访问磁盘的先后次序进行调度。这种算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某进程的请求长期得不到满足的情况。但缺点是由于未对寻道进行优化,会导致平均寻道时间可能较长。
最短寻道时间优先算法要求访问的磁道与当前磁头所在的磁道距离最近,使得每次的寻道时间最短。但这种调度算法不能保证平均寻道时间最短。
扫描算法不仅考虑到要访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。在这种算法中,磁头移动的规律颇似电梯的运行,故又常称为电梯调度算法。
单向扫描调度算法的特点是当磁头刚从里向外移动过某一磁道时,恰有一进程请求访问此磁道,这时该进程必须等待,待磁头从里向外,再从外向里扫描完所有要访问的磁道后才处理该进程的请求,致使该进程的请求被严重地推迟。为了减少这种延迟,算法规定磁头只做单向移动。


25 在支持多线程的操作系统中,假设进程P创建了t1、t2、t3线程,那么(25)

A. 该进程的代码段不能被 t1、t2、t3共享
B. 该进程的全局变量只能被t共享
C. 该进程中t1、t2、t3的栈指针不能被共享
D. 该进程中t1的栈指针可以被t2、t3共享

答案:C

一个程序执行一个或多个进程,一个进程包含一个或多个线程,进程之间相互独立,但同一进程下的各个线程之间共享代码、数据、进程空间、打开文件,但是进程内的线程间栈指针不可共享。


26-28 进程P1、P2、 P3、P4、P5和P6的前趋势图如下所示, 若用PV操作控制进程P1、P2、P3、P4、P5和P6并发执行的过程,需要设置8个信号量S1、S2、S3、S4、S5、S6、S7和S8,且信号量 S1 ~ S8 的初值都等于零。下面P1 ~ P6的进程执行过程中,①和②处应分别填写(26);③和④处应分别填写(27);⑤和⑥处应分别填写(28)

P1
P2
P3
P4
P5
P6

Begin
S1,S2,S3,S4,S5,S6,S7,S8:semaphore; //定义信号量
S1:=0;S2:=0;S3:=0;S4:=0;S5:=0; S6:=0;S7:=0;S8=0
Cobegin

process P1process P2process P3process P4process P5process P6
BeginBeginBeginBeginBeginBegin
P1执行;P(S1);②;④;⑤;P(S7);
V(S1);P2执行;P3执行P4执行;P5执行;P(S8);
V(S2);① ;③;V(S6);⑥;P6执行;
End;End;End;V(S7);End;End;
End;

Coend
End.

A. P(S1)P(S2)和V(S3)V(S4)
B. P(S1)P(S2)和V(S1)V(S2)
C. V(S3)V(S4)和P(S1)P(S2)
D. V(S3)V(S4)和P(S2)P(S3)
.
A. V(S5)和P(S4)P(S5)
B. V(S3)和P(S4)V(S5)
C. P(S5)和V(S4)V(S5)
D. P(S3)和P(S4)P(S5)
.
A. V(S6)和V(S8)
B. P(S6)和P(S7)
C. P(S6)和V(S8)
D. P(S6)和P(S8)

答案:D A C

PV操作中的P,是荷兰语Passeren的缩写,意为“通过(pass)”;V是荷兰语vrijgeven的缩写,意为“释放(give)。
执行前是P,执行后是V。


29 以下关于增量模型优点的叙述中,不正确的是(29)

A. 能够在较短的时间提交一个可用的产品系统
B. 可以尽早让用户熟悉系统
C. 优先级高的功能首先交付,这些功能将接受更多的测试
D. 系统的设计更加容易

答案:D

增量模型又称为渐增模型,也称为有计划的产品改进模型,它从一组给定的需求开始,通过构造一系列可执行中间版本来实施开发活动。第一个版本纳入一部分需求,下一个版本纳入更多的需求,依此类推,直到系统完成。每个中间版本都要执行必需的过程、活动和任务。增量模型是瀑布模型和原型进化模型的综合,它对软件过程的考虑是:在整体上按照瀑布模型的流程实施项目开发,以方便对项目的管理;但在软件的实际创建中,则将软件系统按功能分解为许多增量构件,并以构件为单位逐个地创建与交付,直到全部增量构件创建完毕,并都被集成到系统之中交付用户使用。比较瀑布模型、原型进化模型,增量模型具有非常显著的优越性。但增量模型对软件设计有更高的技术要求,特别是对软件体系结构,要求它具有很好的开放性与稳定性,能够顺利地实现构件的集成。


30 以下敏捷开发方法中,(30)使用迭代的方法,把一段短的时间(如30天)的迭代称为一个冲刺,并按照需求优先级来实现产品

A. 极限编程(XP)
B. 水晶法(Crystal)
C. 并列争球法(Scrum)
D. 自适应软件开发(ASD)

答案:C

极限编程(XP)强调计划永远赶不上变化,因此XP无需开发人员在软件开始初期做出很多的文档,同时XP提倡测试先行,这是为了将以后出现BUG的几率降到最低。
水晶方法(Crystal)Crystal根据项目规模和项目的重要性来区别项目,并赋以相应的方法。
并列争球法 (Scrum)使用迭代的方法,把一段短的时间(如30天)的迭代称为一个冲刺,并按照需求优先级来实现产品。
自适应软件开发(ASD)方法基于复杂自适用系统理论,旨在通过提高组织的自适用力以应对Internet时代下极度变化难于预测的快速软件开发要求,最近正与Crystal方法相借鉴和融合。


31 ~ 40

31 若模块A通过控制参数来传递信息给模块B,从而确定执行模块B中的哪部分语句。则这两个模块的耦合类型是(31)耦合

A. 数据
B. 标记
C. 控制
D. 公共

答案:C

数据耦合是指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言中的值传递。
标记耦合是指两个模块之间传递的是数据结构。
控制耦合是指控制模块调用另一个模块时,传递的是控制变量(题干中的控制参数),被调用块通过该控制变量的值有选择地执行块内某一功能(控制变量)。
公共耦合是指通过一个公共数据环境相互作用的那些模块间的耦合。(一个公式数据环境)。


32 在设计中实现可移植性设计的规则不包括(32)

A. 将设备相关程序和设备无关程序分开设计
B. 可使用特定环境的专用功能
C. 采用平台无关的程序设计语言
D. 不使用依赖于某一平台的类库

答案:B

实现可移植性必须要是要有“平台无关”和“通用”的特性。


33 以下关于管道-过滤器软件体系结构风格优点的叙述中,不正确的是(33)

A. 构件具有良好的高内聚、低耦合的特点
B. 支持软件复用
C. 支持并行执行
D. 适合交互处理应用

答案:D

管道过滤器属于数据流架构风格,这种架构风格的特点就是数据交由系统后由系统中的构件进行处理,一个构件处理完毕后将数据交由后续构件继续处理,这个过程是顺序的不存在你来我往的“交互”。


34-35 以下流程图中,至少需要(34)个测试用例才能覆盖所有路径。采用 McCabe方法计算程序复杂度为(35)

Y
Y
N
N
N
BEGIN
语句1
判断1
语句2
判断2
判断3
语句3
语句5
语句4
语句6
END

A. 3
B. 4
C. 5
D. 6
.
A. 2
B. 3
C. 4
D. 5

答案:D C

路径覆盖是指在流程图中从开始到结束之间的全部路径都覆盖到的测试。图中有3个判断,那么路径的排列组合就有6个。

判断环路复杂度有个简单的方式:流程图中封闭区域个数+1就是答案,因此3+1=4得到环路复杂度为4。


36 在软件系统交付给用户使用后,为了使用户界面更友好,对系统的图形输出进行改进,该行为属于(36)维护

A. 改正性
B. 适应性
C. 改善性
D. 预防性

答案:C

软件的维护内容主要有以下几个方面:
1 改正性维护是指改正在系统开发阶段已发生而系统测试阶段尚未发现的错误。
2 适应性维护是指使应用软件适应信息技术变化和管理需求变化而进行的修改。
3 完善性维护是为扩充功能和改善性能而进行的的修改,主要是指对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。
4 预防性维护是为了改进应用软件的可靠性和可维护性,为了适应未来的软/硬件环境的变化,应主动增加预防性的新的功能,以使应用系统适应各类变化而不被淘汰。


37-38 采用面向对象方法开发学生成绩管理系统,学生的姓名、性别、出生日期、期末考试成绩、查看成绩操作均被(37)在学生对象中。系统中定义不同类,不同类的对象之间通过(38)进行通信

A. 封装
B. 继承
C. 多态
D. 信息
.
A. 继承
B. 多态
C. 消息
D. 重载

答案:A C

本题属于面向对象的基本概念,学生的“姓名、性别…”属于描述学生的信息,叫做学生的属性,属性会被封装在学生这个对象中。

继承是父类和子类之间共享数据和方法的机制。
多态指的是不同对象收到同一消息可以进行不同响应,产生完全不同的结果。
消息是对象间通信的方式。
重载指在一个类中定义多个同名的方法。


39 对采用面向对象方法开发的系统进行测试时,通常从不同层次进行测试。测试类中定义的每个方法属于(39)层

A. 算法
B. 类
C. 模板
D. 系统

答案:A

面向对象测试包括4个测试层次:
1 算法层:测试类中定义的每个方法,相当于传统软件测试中的单元测试。
2 类层:测试封装在同一个类中的所有方法与属性之间的相互作用。可以认为是面向对象测试中所特有的模块(单元)测试。
3 模板层:也称为主题层,测试协同工作的类或对象之间的相互作用。相当于传统软件测试中的子系统测试。
4 系统层:把各个子系统组装成完整的面向对象软件系统,在组装过程同时进行测试。


40 在面向对象系统设计中,如果重用了一个包中的某个类,那么就要重用该包中所的类,这属于(40)原则

A. 共同封闭
B. 共同重用
C. 开放-封闭
D. 接口分离

答案:B

共同封闭原则是指包中的所有类对于同一性质的变化应该是共同封闭的。一个变化若对一个包产生影响,则将对该包里的所有类产生影响,而对于其他的包不造成任何影响。
共同重用原则是指一个包里的所有类应该是共同重用的。如果重用了包里的一个类,那么就要重用包中的所有类。
开放封闭原则一是指要对扩展开放,也就是说当有新的需求或变化时,可以对现有代码进行扩展,以适应新的情况;二是指要对修改封闭,意味着类一旦设计完成,就可以独立完成其工作,而不要对类进行任何修改。
接口分离原则意思是使用多个专门的接口要比使用单一的总接口要好。就是说如果一个类要给多个客户使用,可以为每个客户创建一个接口。


41 ~ 50

41-42 UML,序列图用于建模(41),如下所示序列图中,可能的消息顺序是(42)

:A :B :C a b loop [...] c :A :B :C

A. 系统在它的周边环境的语境中所提供的外可见服务
B. 某一时刻一组对象以及它们之间的关系
C. 系统内从一个活动到另一个活动的流程
D. 以时间顺序组织的对象之间的交互活动
.
A. a→b→c→a→b
B. c→b→a→c→b
C. a→b→a→b→c
D. a→b→c→a→b→c

答案:D C

选项A是指用例图,用例图显示了一组用例、参与者以及它们之间的关系,可以使用用例图展示系统具有的功能,可以理解为系统提供的服务。
选项B对象图展示某一时刻一组对象以及它们之间的关系。
选项C活动图展示了系统内从一个活动到另一个活动的流程。
选项D序列图描述了以时间顺序组织的对象之间的交互活动。

根据图中的标注loop(循环)是在消息a与消息b的处进行的。因此消息c的顺序排列在循环结束之后。


43 UML包图展现由模型本身分解而成的组织单元及其依赖关系,以下关于包图的叙述中,不正确的是(43)

A. 可以拥有类、接口构件、节点
B. 一个元素可以被多个包拥有
C. 一个包可以嵌套其他包
D. 一个包内元素不能重名

答案:B

一个模型元素不能被一个以上的包所拥有,也就是说一个元素如果放到了这个包里,那它就不能再放到别的包里了。就好像一个学生在A班,就不能又在B班。


44-45 在某招聘系统中,要求实现求职简历自动生成功能。简历的基本内容包括求职xx的姓名、性别、年龄及工作经历等。希望每份简历中的工作经历有所不同,并尽量减少程序中的重复代码。针对此需求,设计如下所示类图。该设计采用了(44),由xx实例指定创建对象的种类,声明一个复制自身的接口,并且通过复制这些 Resume xx WorkExperience 的对象来创建新的对象。该模式属于(45)模式

1...*
1
cloneable
+clone()
WorkExperience
...
Resume
...

A. 单例(Singleton)
B. 抽象工厂(Abstract Factory)
C. 生成器(Builder)
D. 原型(Prototype)
.
A. 混合型
B. 行为型
C. 结构型
D. 创建型

答案:D D

单例模式保证一个类仅有一个实例,并提供一个访问它的全局访问点。
抽象工厂模式的优点是方便创建一系列的对象,其使用场景也是创建系列对象的情况。
生成器模式将一个复杂的对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
原型模式可以使用原型实例指定创建对象的种类,并且通过拷贝这个原型来创建新的对象。
题干给的类图明显标注了原型模式中的clone方法,因此本题选择D。

原型模式属于创建型设计模式,用于创建对象。


46-47 某旅游公司欲开发一套软件系统,要求能根据季节,节假日等推出不同的旅行定价包,如淡季打折、一口价等。实现该要求适合采用(46)模式,该模式的主要意图是(47)

A. 策略(Strategy)
B. 状态(State)
C. 观察者(Observer)
D. 命令(command)
.
A. 将一个请求封装为对象,从而可以用不同的请求对客户进行参数化
B. 当一个对象的状态发生改变时,依赖于它的对象都得到通知并被自动更新
C. 允许一个对象在其内部状态改变时改变它的行为
D. 定义一系列的算法,把它们一个个封装起来,并且使它们可以相互替换

答案:A D

策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换。
状态模式对于对象内部的状态,允许其在不同的状态下,拥有不同的行为,对状态单独封装成类。
观察者模式定义了对象间的一种一对多依赖关系,使得每当一个对象改变状态,则所有依赖于它的对象都会得到通知并被自动更新。
命令模式将一个请求封装成一个对象,从而使得用不同的请求对客户进行参数化;对请求排队或记录请求日志,以及支持可撤销的操作。命令模式将发出命令的责任和执行命令的责任分割开。请求的一方不必知道接收请求的一方的接口,也不必知道请求是怎么被接收的,以及操作是否被执行、何时被执行以及怎样被执行的。
题干提到的“淡季打折”、“一口价”等都属于不同的算法,均可以实现不同节假日的不同折扣。因此,本题选择A。

选项A是命令模式,选项B是观察者模式,选项C是状态模式,选项D是策略模式。


48 Python 中采用,(48)方法来获得一个对象的类型

A. str()
B. type()
C. id()
D. object()

答案:B

str() 函数将指定的值转换为字符串。
type() 函数返回指定对象的类型。
id() 函数返回指定对象的唯一id。
object() 函数返回一个空对象。


49 在 Python 语言中,语句x=(49)不能定义一个元组

A. (1,2,1,2)
B. 1,2,1,2
C. tuple()
D. (1)

答案:D

创建只包含一个元素的元组,后面的逗号不能省。应改成:(1,)。


50 关于 Python 语言的叙述中,不正确的是(50)

A. for 语句可以用于在序列(如列表、元组和字符串)上进行迭代访问
B. 循环结构如for和while后可以加else语句
C. 可以用 if…else 和 switch…case 语句表示选择结构
D. 支持嵌套循环

答案:C

Python中没有内置的switch…case语句


51 ~ 60

51 在数据库应用系统的开发过程中,开发人员需要通过视图层、逻辑个层次上的抽象来对用户屏蔽系统的复杂性,简化用户与系统的交互过程错误的是(51)

A. 视图层是最高层次的抽象
B. 逻辑层是比视图层更低一层的抽象
C. 物理层是最低层次的抽象
D. 物理层是比逻辑层更高一层的抽象

答案:D

一个可用的数据库系统必须能够高效地检索数据。这种高效性的需求促使数据库设计者使用复杂的数据结构来表示数据。由于大多数数据库系统用户并未受过计算机的专业训练,因此系统开发人员需要通过视图层、逻辑层和物理层三个层次上的抽象来对用户屏蔽系统的复杂性,简化用户与系统的交互。
视图层(view level)是最高层次的抽象,描述整个数据库的某个部分。因为数据库系统的很多用户并不关心数据库中的所有信息,而只关心所需要的那部分数据。某些问题可以通过构建视图层实现,这样做除了使用户与系统交互简化,而且还可以保证数据的保密性和安全性。
逻辑层(logical level)是比物理层更高一层的抽象,描述数据库中存储什么数据以及这些数据间存在什么关系。逻辑层通过相对简单的结构描述了整个数据库。尽管逻辑层的简单结构的实现涉及了复杂的物理层结构,但逻辑层的用户不必知道这些复杂性。因为,逻辑层抽象是数据库管理员的职责,由管理员确定数据库应保存哪些信息。
物理层(physical level)是最低层次的抽象,描述数据在存储器是如何存储的。物理层详细地描述复杂的底层结构。


52 给定关系模式 R(U,F),其中U 为属性集,F是U上的一组函数,则根据Armstrong公理,合并规则是指(52)

A. 若Y∈X∈U,则X->Y为F所蕴含
B. 若X->Y,Y->Z,则X->Y为F所蕴含
C. 若X->Y,Z∈Y,则X->Z 为F所蕴含
D. 若X->Y,X->Z,则X->YZ为F所蕴含

答案:D

Armstrong公理的定义是从已知的一些函数依赖,可以推导出另外一些函数依赖,这就需要一系列推理规则,这些规则常被称作“Armstrong 公理”。设关系式R(U,F),U是关系模式R的属性集,F是U上一组函数依赖,则有以下三条推理规则:
A1自反律:若Y⊆X⊆U,则X→Y为F所蕴含;
A2增广律:若X→Y为F所蕴含,且Z⊆U,则XZ→YZ为F所蕴含;
A3传递律:若X→Y,Y→Z为F所蕴含,则X→Z为F所蕴含。
根据上面三条推理规则,又可推出下面三条推理规则:
合并规则:若X→Y,X→Z,则X→YZ为F所蕴含;
伪传递规则:若X→Y,WY→Z,则XW→Z为F所蕴含;
分解规则:若X→Y,Z⊆Y,则X→Z为F所蕴含。


53-54 给定关系模式R(U,F),U={A,B,C,D},函数依赖集F={AB->C,CD->B}。关系模式R(54),主属性和非主属性的个数分别为(54)

A. 只有1个候选关键字ACB
B. 只有1个候选关键字BCD
C. 有2个候选关键字ABD和ACD
D. 有2个候选关键字ACB和BCD
.
A. 4和0
B. 3和1
C. 2和2
D. 1和3

答案:C A

根据函数依赖定义,可知ACD→U,ABD→U,所以ACD和ABD均为候选关键字。

候选键里的属性为主属性,其余为非主属性。


55-56 如果将Students表的插入权限赋予用户User1,并允许其将该权限授予他人,那么正确的SQL 语句如下: GRANT (55) TABLE Students TO User1 (56)

A. INSERT
B. INSERT ON
C. UPDATE
D. UPDATE ON
.
A. FOR ALL
B. PUBLIC
C. WITH GRANT OPTION
D. WITH CHECK OPTION

答案:B B

Students表的插入权限赋予用户使用的语句是:
“GRANT INSERT ON TABLE Students TO User1 WITH GRANT OPTION”。
授权语句的完整格式为:GRANT<权限>[<权限>]…[ON<对象类型><对象名>]TO<用户>[,<用户>]>…[WITH GRANT OPTION]


57 利用栈对算术表达式10*(40-30/5)+20求值时,存放操作数的栈(初始为空)的容量至少为(57),才能满足暂存该表达式中的运算数或运算结果的要求

A. 2
B. 3
C. 4
D. 5

答案:C

1 先将题干的算数(中缀)表达式转换为后缀表达式。具体方式是:从左往右,先把每个算数表达式都加上括号,再依次把运算符移动到本层次的括号后面,最后去掉全部括号。如:
10*(40-30/5)+20 → ((10*(40-(30/5)))+20) → ((10(40(30 5)/)-)20)+ → 10 40 30 5 / - * 20 +
2 初始化两个栈,操作数栈和运算符栈,从左往右扫描,若扫描到操作数,压入操作数栈,扫描到运算符或者界限符,压入运算符栈。具体方式:
① 从左往右扫描每一个元素,直到处理完所有元素。
② 若扫描到操作数,则压入栈,并回到①,否则执行③。
③ 若扫描到运算符,则弹出两个栈顶元素,执行相应的运算,运算结果压回栈顶,回到①。
根据后上面求得的缀表达式得知操作数入栈顺序为:[10,40,30,5]遇到运算符“/” 则将栈顶元素“5”出栈、“30”出栈执行除法,所得结果“6”压入栈中,此时操作数栈中的元素为[10,40,6]。继续扫描遇到运算符“-”,将操作数栈中的“40”和“6” 出栈,执行减法,所得结果“34”入栈。此时操作数栈中元素是[10,34]。继续扫描,遇到运算符“
” ,将“34”和“10”出栈,执行乘法,所得结果“340”压入操作数栈。此时操作数栈中元素[340]。继续扫描,遇到“20”进行入栈,此时操作数栈中元素是[340,20]。继续扫描,遇到运算符“+”,将“20”与“340”出栈,执行加法,所得结果360入栈。最终操作数栈中的元素是[360]。至此后缀表达式全部处理完毕。由此可知,所需操作数栈的大小至少为4,即能存放“10,40,30,5”这几个操作数才能满足计算要求。


58 设有5个字符,根据其使用频率为其构造哈夫曼编码。以下编码方案中,(58)是不可能的

A. {111,110,101,100,0}
B. {0000,0001,001,01,1}
C. {11,10,01,001,000}
D. {11,10,011,010,000}

答案:D

哈夫曼树可以用于对字符构造哈夫曼编码,字符出现频率越高的距离根结点越近。构造哈夫曼树的时候左子树上的节点都采用“0”做编码,右子树上的节点都采用“1”作为编码。哈夫曼树的节点的度(节点拥有子节点的数量)只能是0度或2度。


59 设有向图G 具有n个顶点、e条弧,采用邻接表存储,则完成广度优先遍历的时间复杂度为(58)

A. O(n+e)
B. O(n2)
C. O(e2)
D. O(n*e)

答案:A

根据题意有向图有e条弧,所以e条边,用邻接表存储,一共n个顶点连接e条边,逐个遍历一遍时间复杂度为n+e。


60 对某有序表进行二分查找时,进行比较的关键字序列不可能是(60)

A. 42,61,90,85,77
B. 42,90.85,61,77
C. 90,85,61,77,42
D. 90,85,77,61,42

答案:C

二分查找的前提是元素有序(一般是升序),基本思想是拿中间元素。
A[m]与要查找的元素x进行比较,如果相等,则已经找到,如果A[m]比x大,那么要找的元素一定在A[m]前边(左边),如果A[m]比x小,那么要找的元素一定在A[m]后边(右边)。每进行一次查找,数组规模减半。
反复将子数组规模减半,直到发现要查找的元素,或者当前子数组为空。
选项C错在如果一个元素比61大,下一次可以跟77比较,但是77后面的元素是42,说明要查找的元素比77小,因此再次比较确实是跟42 比,而题干已经表明这个元素大于61了,明显不合理。


61 ~ 70

61 设由三棵树构成的森林中,第一棵树、第二棵树和第三棵树的结点总数分别为n1、n2 和n3。将该森林转换为一棵二叉树,那么该二叉树的右子树包含(60)个结点

A. n1
B. n1+n2
C. n3
D. n2+n3

答案:D

todo


62-63 对一组数据进行排序,要求排序算法的时间复杂度为O(nlgn),且要求排序是稳定的,则可采用(62)算法。若要求排序算法的时间复杂度为O(nlgn),且在原数据上进行,即空间复杂度为O(1),则可采用(63)算法

A. 直接插入排序
B. 堆排序
C. 快速排序
D. 归并排序
.
A. 直接插入排序
B. 堆排序
C. 快速排序
D. 归并排序

答案:D B

对一组数据进行排序,要求排序算法的时间复杂度为 O(nlogn),且要求排序是稳定的,则可以采用归并排序算法。
归并排序是一种稳定的、基于比较的排序算法,采用分治思想,将待排序列分成若干个子序列,对每个子序列进行内部排序,最后合并各个有序子序列,得到完整的有序序列。归并排序的时间复杂度为O(nlogn),可以保证排序的稳定性。
如果要求排序算法的时间复杂度为O(nlogn),且在原数据上进行,即空间复杂度为O(1),则可以采用堆排序算法。
堆排序是一种不稳定的排序算法,它利用堆这种数据结构进行排序。堆排序的时间复杂度为O(nlogn),在原数据上进行排序,空间复杂度为O(1)。但是,由于堆排序过程中必须先构建一个堆,因此需要占用额外的空间来存储堆。


64-65 采用Kruskal算法求解下图的最小生成树,采用的算法设计策略是(64)。该最小生成树的权值是(65)

8
3
1
4
9
5
2
5
4
5
A
B
E
C
F
D

A. 分治法
B. 动态规划法
C. 贪心算法
D. 回溯算法
.
A. 14
B. 16
C. 20
D. 32

答案:C A

Kruskal算法是一种使用贪心策略的最小生成树算法。该算法按照边权值的大小依次选择边,并保证在选择每条边时不会形成环,直到选出 n−1 条边为止。
在给定的图中,各条边的权值如下:
AB:8 AC:1 AD:5 BC:5 BE:3
CE:4 CF:4 CD:5 DF:2 EF:9
按照边权值从小到大的顺序,首先选取权值为1的边 AC,接着选取权值为2的边DF,接着选取权值为3的边BE,接着选取权值为4的边CE和CF。图中顶点为6,此时已选取5条边。最小生成树构造完毕,且不存在环。
最小生成树的权值为:1 + 2 + 3 + 4 + 4 = 14。


66 www的控制协议是(66)

A. FTP
B. HTTP
C. SSL
D. DNS

答案:B

FTP(File Transfer Protocol,文件传输协议)是另一种常见的Internet协议。FTP协议用于在网络上进行文件传输,支持上传和下载文件。
HTTP(Hypertext Transfer Protocol,超文本传输协议),它是一种用于传输超媒体文档(例如 HTML)的应用层协议。HTTP是一个请求/响应模型的协议,客户端向服务器发送请求,服务器向客户端返回响应内容。
SSL(Secure Sockets Layer,安全套接字层)是一种加密协议,用于保护在 Internet上进的通信数据。SSL通常在HTTPS上使用。
DNS(Domain Name System,域名系统)是一种分布式数据库系统,用于将域名解析为IP地址,以便计算机能够访问互联网。DNS是一个应用层协议,常用于网络中的命名服务。


67-68 在Linux操作系统中通常使用(67),作为 Web服务器,其默认的Web站目录为(68)

A. IIS
B. Apache
C. NFS
D. MYSQL
.
A. /etc/httpd
B. /var/log/httpd
C. /etc/home
D. /home/httpd

答案:B

IIS(Internet Information Services,互联网信息服务)是微软公司提供的一种基于Windows的Web服务组件,其中包括Web服务器、FTP服务器、NNTP服务器和SMTP服务器,分别用于网页浏览、文件传输、新闻服务和邮件发送等方面。
Apache是当前最流行的Web服务器端软件之一,可以运行在几乎所有广泛使用的计算机平台,默认的Web目录为“/home/httpd”。
NFS(Network File System,网络文件系统)把网络磁盘挂载到本地。
MySQL是一种关系型数据库管理系统。


69 SNMP使用的传输层协议是(69)

A. UDP
B. TCP
C. IP
D. ICMP

答案:A

UDP(User Datagram Protocol,用户数据报协议)是一种无连接的传输层协议,能够帮助应用层发送数据包,但是不提供数据包分组、组装、也不会对数据包进行排序。
TCP(Transmission Control Protocol,传输控制协议)也是一种传输层协议,可以提供UDP不能提供的数据包分组、组装等服务。
IP(Internet Protocol,网际互连协议)工作在网络层,为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。传输层为应用层提供服务,网络层则为传输层提供服务。传输层提供进程之间的通信,而IP提供主机之间的通信。如IP协议将数据从一台主机发送至另一台主机,TCP则保证了其传输可靠性。
ICMP(Internet Control Message Protocol,Internet控制报文协议),用于在IP主机、路由器之间传递控制消息。如网络通不通、主机是否可达等控制信息,类似于“侦察兵”的工作。
题干的SNMP(Simple Network Management Protocol)全称是简单网络管理协议,SNMP使网络管理员能够管理网络效能,发现并解决网络问题以及规划网络增长。它使用传输层的UDP协议。


70 某电脑无法打开任意网页,但是互联网即时聊天软件使用正常,造成该故障的原因可能是(70)

A. IP地址配置错误
B. DNS配置错误
C. 网卡故障
D. 链路故障

答案:B

该电脑无法打开任意网页,但可以正常使用即时聊天软件,因此可以排除网络链路故障的可能性。造成该故障的原因可能是DNS配置错误。
DNS(Domain Name System)是一种通过域名解析IP地址的分布式数据库系统。在上网时,计算机需要将域名解析为IP地址才能访问对应的网站。如果DNS服务器的配置有问题,或是DNS 缓存数据损坏,就可能导致无法访问互联网的情况。
例如访问baidu实际是需要DNS解析成IP之后去访问。

71 ~ 75

Low-code and no code software development solutions have emerged as viable and convenient alternatives to the traditional development process.
Low-code is a rapid application development (RAD) approach that enables automated code generation through (71) building blocks like drag-and-drop and pull-down menu interfaces. This (72) allows low-code users to focus on the differentiator rather than the common denominator of programming. Low-code is a balanced middle ground between manual coding and no-code as its users can still add code over auto-generated code.While in low-code there is some handholding done by developers in the form of scripting or manual coding, no-code has a completely (73) approach, with 100% dependence on visual tools.
A low-code application platform (LCAP) - also called a low-code development platform (LCDP) - contains an integrated development environment (IDE) with (74) features like APIs, code templates, reusable plug-in modules and graphical connectors to automate a significant percentage of the application development process LCAPs are typically available as cloud-based Platform-as-a-Service (PaaS) solutions.
A low-code platform works on the principle of lowering complexity by using visual tools and techniques like process modeling, where users employ visual tools to define workflows,business rules, user interfaces and the like. Behind the scenes, the complete workflowautomatically converted into code. LCAPs are used predominantly by professional developers,automate the generic aspects of coding to redirect effort on the last mile of (75).

71:
A. visual
B. component-based
C. object-oriented
D. structural
72:
A. block
B. automation
C. function
D. method
73:
A. modern
B. hands-off
C. generic
D. labor-free
74:
A. reusable
B. built-in
C. existed
D. well-konwn
75:
A. delivery
B. automation
C. development
D. success

答案:A B B B C

原文连接
低代码和无代码的软件开发解决方案已经成为传统开发过程的可行和方便的替代品。
低代码是一种快速应用程序开发(RAD)方法,它通过拖放和下拉菜单界面等(71)构建块实现了自动代码生成。这种(72)允许低代码用户关注差异器,而不是编程的共同特征。低代码是介于手动编码和无代码之间的一个平衡的中间地带,因为它的用户仍然可以在自动生成的代码之上添加代码。虽然在低代码中,开发人员以脚本或手动编码的形式完成了一些工作,但无代码有一种(73)的方式,100%依赖于可视化工具。
低代码应用程序平台(LCAP)——也称为低代码开发平台(LCDP)——包含一个集成开发环境(IDE),具有(74)特性,如api、代码模板、可重用插件模块和图形连接器,以实现很大比例的应用程序开发过程的自动化。LCAP通常可作为基于云的平台即服务(PaaS)解决方案使用。
低代码平台的工作原理是通过使用可视化工具和流程建模等技术来降低复杂性,用户使用可视化工具来定义工作流、业务规则、用户界面等。在幕后,完整的工作流会被自动转换为代码。LCAP主要由专业开发人员用于自动化编码的通用方面,以重定向最后一英里的(75)。
(71) A.可视化 B.组件化 C.面向对象 D.结构化
(72) A.块 B.自动化 C.功能 D.方法
(73) A.现代化 B.放手的 C.通用的 xD.自由劳动力
(74) A.可重用的 B.内置的 C.已存在的 D.众所周知的
(75) A.交付 B.自动化 C.开发 D.成就


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/人工智能uu/article/detail/896447?site
推荐阅读
相关标签
  

闽ICP备14008679号