2022年下半年 软件设计师 上午试卷(41题—75题)

UML活动图用于建模 (41) 。以下活动图中,活动A1之后,可能的活动执行序列顺序是 (42)

(41) A. 系统在它的周边环境的语境中所提供的外部可见服务

B. 某一时刻一组对象以及它们之间的关系

C. 系统内从一个活动到另一个活动的流程

D. 对象的生命周期中某个条件或者状态

(42) A. A2、A3、A4和A5 B. A3、A4和A5,或A2、A4或A5

C. A2、A4和A5 D. A2或A3、A4和A5

UML活动图是统一建模语言(UML)中的一种图表类型,用于描述系统中的业务流程、操作序列或工作流程。


UML构件图(component diagram)展现了一组构件之间的组织和依赖,专注于系统的静态 (43) 图,图中通常包括构件、接口以及各种关系。

(43) A. 关联 B. 实现 C. 结构 D. 行为

扫描二维码关注公众号,回复: 17177085 查看本文章

在构件图中,构件表示系统中的模块、组件或其他可部署单元。接口表示构件之间的相互作用点或协定。构件图通过展示构件和接口之间的实现关系,强调构件如何实现接口所定义的方法和行为。


在某系统中,不同级别的日志信息记录方式不同,每个级别的日志处理对象根据信息级别高低,采用不同方式进行记录。每个日志处理对象检查消息的级别,如果达到它的级别则进行记录,否则不记录;然后将消息传递给它的下一个日志处理对象。针对此需求,设计如下所示类图。该设计模式采用 44 模式使多个前后连接的对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。该模式属于 45 模式,该模式适用于 46 

(44) A. 责任链Chain of Responsibility B. 策略(Strategy)

C. 过滤器(Filter) D. 备忘录(Memento)

(45) A. 行为型类 B. 行为型对象 C. 结构型类 D. 结构型对象

(46) A. 不同的标准过滤一组对象,并通过逻辑操作以解耦的方式将它们链接起来

B. 可处理一个请求的对象集合应被动态指定

C. 必须保存一个对象在某一个时刻的状态,需要时它才能恢复到先前的状态

D. 一个类定义了多种行为,并且以多个条件语句的形式出现

(44)答案为A. 责任链(Chain of Responsibility)。

根据题目描述,不同级别的日志信息需要采用不同的记录方式,每个级别的日志处理对象根据信息级别高低,采用不同方式进行记录。同时,每个日志处理对象检查消息的级别,如果达到它的级别则进行记录,否则将消息传递给它的下一个日志处理对象。这种需求可以运用责任链模式实现。责任链模式可以使多个前后连接的对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。

(45)答案为B. 行为型对象。

责任链模式属于行为型设计模式。

(46)答案为B,可处理一个请求的对象集合应被动态指定

从题干”采用 44 模式使多个前后连接的对象都有机会处理请求“可以看出


驱动新能源汽车的发动机时,电能和光能汽车分别采用不同驱动方法,而客户端希望使用统一的驱动方法,需定义一个统一的驱动接口屏蔽不同的驱动方法,该要求适合采用 47 模式。

(47) A. 中介者(Mediator) B. 访问者(Visitor)

C. 观察者(Observer) D. 适配器Adapter

适配器模式可以将一个类的接口转换成客户端所期望的另一个接口,从而使得原本不兼容的类能够合作使用。

这里我们可以定义一个统一的驱动接口,然后针对电能汽车和光能汽车分别实现对应的适配器类,使它们都符合统一的驱动接口。这样客户端就可以通过统一的驱动接口来驱动不同类型的车辆,实现了统一的驱动方法。


在Python3中, (48) 不是合法的异常处理结构。

(48) A. try...except... B. try...except...finally

C. try...catch... D. raise

python语法规定。


在Python3中,表达式list(range(11))[10:0:-2]的值为 (49)

(49) A. [10, 8, 6, 4, 2, 0] B. [10, 8, 6, 4, 2]

C. [0, 2, 4, 6, 8, 10] D. [0, 2, 4, 6, 8]

range(11)即【0,1,2,3,4,5,6,7,8,9,10】

后面的【10:0:-2】☞操作区间为【10,0),下标10元素(包含)到下标0元素(不包含),-2为步长,2为一步,且为从后往前取。所以结果为B。【10,8,6,4,2】


在Python3中,执行语句x = input(),如果从键盘输入123并按回车键,则x的值为 (50)

  1. A. 123 B. 1,2,3 C. 1 2 3 D. '123'

input()接收用户输入的值数据类型为字符串str


E-R模型向关系模型转换时,两个实体E1和E2之间的多对多联系R应该转换为一个独立的关系模式,且该关系模式的关键字由 51 组成。

在E-R模型中,多对多联系通常用菱形表示。当将E-R模型转换为关系模型时,多对多联系R需要被转换为一个独立的关系模式。

对于这个关系模式,它的关键字由E1和E2的主键组成。这是因为在多对多联系中,E1和E2之间存在多对多的关系,需要使用它们的主键来唯一标识每个实体。

对于D的疑惑:对于多对多联系R转换为的独立关系模式,其只需要包含两个外键,分别对应E1和E2的主键。这是因为多对多联系R本身并不包含任何属性,它只是表示E1和E2之间的某种关联关系。因此,在转换为独立关系模式时,也不需要加上任何对应关系的属性。


某高校人力资源管理系统的数据库中,

教师关系模式为T(教师号,姓名,部门号,岗位,联系地址,薪资),

函数依赖集F={教师号→(姓名,部门号,岗位,联系地址),岗位→薪资}。

关系模式T的主键为 52 ,函数依赖集F 53 

(52) A. 教师号,T存在冗余以及插入异常和删除异常的问题

B. 教师号,T不存在冗余以及插入异常和删除异常的问题

C. (教师号,岗位),T存在冗余以及插入异常和删除异常的问题

D. (教师号,岗位),T不存在冗余以及插入异常和删除异常的问题

(53) A. 存在传递依赖,故关系模式T最高达到1NF

B. 存在传递依赖,故关系模式T最高达到2NF

C. 不存在传递依赖,故关系模式T最高达到3NF

D. 不存在传递依赖,故关系模式T最高达到4NF

(52)选项A. 教师号,T存在冗余以及插入异常和删除异常的问题 根据给定的函数依赖集F,教师号是关系模式T的主键,但岗位、联系地址、薪资等属性对教师号存在部分依赖关系,导致了冗余数据的存在。此外,在插入和删除数据时,这些部分依赖关系也可能导致插入异常和删除异常。

(53)选项B. 存在传递依赖,故关系模式T最高达到2NF 根据给定的函数依赖集F,岗位→薪资,存在非主属性岗位决定了非主属性薪资的传递依赖。因此,关系模式T最高达到2NF,而不是3NF或4NF。


给定员工关系E(员工号,员工名,部门名,电话,家庭住址)、工程关系P(工程号,工程名,前期工程号)、参与关系EP(员工号,工程号,工作量)。查询“005”员工参与了“虎头山隧道”工程的员工名、部门名、工程名、工作量的关系代数表达式如下:

首先要满足,是005员工参与了,所以在E中要满足1即员工号=005

其次,需要根据工程名字,在P中定位到2工程名等于虎头山隧道来锁定工程号从而关联EP中的工作量


假设事务程序A中的表达式x/y,若y取值为0,则计算该表达式时,会产生故障。该故障属于 (56)

(56) A. 系统故障 B. 事务故障 C. 介质故障 D. 死机

A. 系统故障:系统故障通常指整个计算机系统或相关硬件、软件出现问题导致无法正常工作或提供服务的情况。此处的故障更偏向于具体的计算过程中的问题,而不是整个系统的故障。 C. 介质故障:介质故障通常指存储介质(如硬盘、磁带等)发生物理损坏或无法读取/写入数据的情况。表达式计算中的故障与介质故障没有直接关联。 D. 死机:死机指计算机系统由于异常或错误导致无法继续正常工作,需要重新启动或重置。表达式计算中的故障不属于死机的范畴。

因此,正确答案是选项B. 事务故障。


设栈初始时为空,对于入栈序列1, 2, 3, ... , n,这些元素经过栈之后得到出栈序列P1,P2,P3,,,,,Pn,若P3=4,则P1,P2不可能的取值为 57 

  1. A. 6,5 B. 2,3 C. 31 D. 3,5

草稿纸演算一下就知道了。


设m和n是某二叉树上的两个结点,中序遍历时,n排在m之前的条件是 (58)

(58) A. m是n的祖先结点 B. m是n的子孙结点

C. m在n的左边 D. m在n的右边

中序遍历规则是左中右,所以想要n排在m之前,m必须在n的右边。


若无向图G有n个顶点e条边,则G采用邻接矩阵存储时,矩阵的大小为 59 

邻接矩阵记录图,i,j都是表示所有的顶点,值为是否有边,所以矩阵大小只与顶点数有关,所以矩阵大小为n^2


以下关于m阶B-树的说法中,错误的是 (60)

(60) A. 根结点最多有m棵子树 B. 所有叶子结点都在同一层次上

C. 结点中的关键字有序排列 D. 叶子结点通过指针链接为有序表

存疑,不太了解B0树。


下列排序算法中,占用辅助存储空间最多的是 (61)

(61) A. 归并排序 B. 快速排序 C. 堆排序 D. 冒泡排序

归并排序是一种分治策略的排序算法,在排序过程中需要使用额外的辅助数组来合并子数组。具体来说,归并排序将待排序的数组递归地划分成较小的子数组,然后通过比较和合并子数组来实现排序。在这个过程中,需要使用一个与原始数组大小相同的辅助数组来暂存合并的结果。

与归并排序不同,快速排序和堆排序都是原地排序算法,它们可以在输入数组上进行原址操作,而不需要使用额外的辅助存储空间。冒泡排序也是原地排序,只需要常数级的额外空间来进行元素交换操作。


折半查找在有序数组A中查找特定的记录K:通过比较K和数组中的中间元素A[mid]进行比较,如果相等,则算法结束;如果K小于A[mid],则对数组的前半部分进行折半查找;否则对数组的后半部分进行折半查找。根据上述描述,折半查找采用了 (62) 算法设计策略。对有序数组(3,14,27,39,42,55,70,85,93,98),成功查找和失败查找所需要的平均比较次数分别是 (63) (假设查找每个元素的概率是相同的)。

(62) A. 分治 B. 动态规划 C. 贪心 D. 回溯

(63) A. 29/10和29/11 B. 30/10和30/11

C. 29/1039/11 D. 30/10和40/11

折半查找采用了分治算法设计策略。

63问还不太懂。


采用Dijkstra算法求解下图A点到E点的最短路径,采用的算法设计策略是 (64) 。该最短路径的长度是 (65)

(64) A. 分治法 B. 动态规划 C. 贪心算法 D. 回溯法

(65) A. 5 B. 6 C. 7 D. 9

很简单,理解Dijkstra算法就能做。


VLAN tag在OSI参考模型的 (66) 实现。

(66) A. 网络层 B. 传输层 C. 数据链路层 D. 物理层

VLAN(Virtual Local Area Network)是一种逻辑上的网络划分技术,可以将一个物理局域网划分成多个虚拟局域网。VLAN tag是用来标记数据帧所属的VLAN的信息,它位于数据链路层的帧头部。通过在帧头部添加VLAN tag,可以在共享同一个物理网络的设备之间实现逻辑上的隔离和分割。


Telnet协议是一种 (67) 远程登录协议。

(67) A. 安全 B. B/S模式 C. 基于TCP D. 分布式

Telnet协议使用TCP作为传输层协议,用于在网络上远程登录到其他计算机或设备。它提供了一种通过网络终端访问和控制远程主机的方式,允许用户在本地计算机上以文本方式输入命令和执行操作,就像直接在远程主机上操作一样。


以下关于HTTPS和HTTP协议的叙述中,错误的是 68)

(68) A. HTTPS协议使用加密传输

B. HTTPS协议默认服务端口号是443

C. HTTP协议默认服务端口号是80

D. 电子支付类网站应使用HTTP协议

HTTPS协议使用加密传输,更加安全,所以电子支付类网站肯定是使用HTTPS协议。


将网址转换为IP地址要用 (69) 协议。

(69) A. 域名解析 B. IP地址解析 C. 路由选择 D. 传输控制

将网址解析为IP地址,需要对域名进行解析才能得到IP地址,所以需要用到域名解析协议。


以下关于IP地址和MAC地址说法错误的是 70)

(70) A. IP地址长度32或128位,MAC地址的长度48位

B. IP地址工作在网络层,MAC地址工作在数据链路层

C. IP地址的分配是基于网络拓扑,MAC地址的分配是基于制造商

D. IP地址具有唯一性,MAC地址不具有唯一性

MAC地址也具有唯一性,它是由网络适配器厂商在生产过程中为每个网络适配器分配的,以确保全球范围内的唯一性。每个网络适配器都有一个独特的MAC地址。


We initially described SOA without mentioning Web services, and vice versa. This is because they are orthogonal: service-orientation is an architectural (71) , while Web services are an implementation (72) . The two can be used together, and they frequently are, but they are not mutually dependent.

For example, although it is widely considered to be a distributed-computing solution, SOA can be applied to advantage in a single system, where services might be individual processes with well-defined (73) that communicate using local channels, or in self-contained cluster, where they might communicate across a high-speed interconnect.

Similarly, while Web services are (74) as the basis for a service-oriented environment, there is nothing in their definition that requires them to embody the SOA principles. While (75) is often held up as a key characteristic of Web services, there is no technical reason that they should be stateless—that would be a design choice of the developer, which may be dictated by the architectural style of the environment in which the service is intended to participate.

71) A. design B. style C. technology D. structure

72) A. structure B. style C. technology D. method

73) A. interfaces B. functions      C. logiccs D. formats

74) A. regarded B. well-suited C. worked D. used

75) A. distribution B. interconnection  C. dependence D. statelessness

翻译:

我们最初描述SOA时没有提到Web服务,反之亦然。这是因为它们是正交的:面向服务是一种架构风格,而Web服务是一种实现技术。两者可以一起使用,而且它们经常是,但它们并不相互依赖。

例如,尽管SOA被广泛认为是一种分布式计算解决方案,但它可以应用于单个系统中,其中服务可能是具有明确定义的接口的单个进程,使用本地通道进行通信,或者在自包含集群中,它们可能通过高速互连进行通信。

类似地,尽管Web服务非常适合作为面向服务的环境的基础,但它们的定义中没有任何东西要求它们体现SOA原则。虽然无状态通常被认为是Web服务的一个关键特征,但从技术上讲,它们没有理由应该是无状态的——这将是开发人员的设计选择,这可能由服务打算参与的环境的架构风格决定。

猜你喜欢

转载自blog.csdn.net/m0_62742402/article/details/133935369