2020年11月软件设计师真题透析

2020年下半年软件设计师上午真题及答案解析

1、在程序执行过程中,高速缓存(Cache)  与主存间的地址映射由(   )。

A. 操作系统进行管理 B. 操作系统进行管理 C.    程序员自行安排D.    硬件自动完成

答案: D,Cache 与主存地址映射由硬件完成。

2、计算机中提供指令地址的程序计数器 PC 在( )中。

A.控制器 B.运算器 C.存储器 D.I/O 设备

 答案: A,PC 是控制器中的子部件。

3、以下关于两个浮点数相加运算的叙述中,正确的是( ).

A. 首先进行对阶,阶码大的向阶码小的对齐

B. 首先进行对阶,阶码小的向阶码大的对齐

C. 不需要对阶,直接将尾数相加

D. 不需要对阶,直接将阶码相加

答案: B,浮点数运算的过程:对阶→尾数运算→规格化。 其中对阶的过程:小数向大数看齐,尾数右移。

4、某计算机系统的 CPU 主频为 2.8GHz。某应用程序包括 3 类指令, 各类指令的 CPI(执行每条指令所需要的时钟周期数)及指令比例如’下 表所示。执行该应用程序时的平均 CPI 为(4);运算速度用 MIPS 表 示,约为( 5)。

 2020年11月软件设计师真题透析_第1张图片

4、A.25    B.3     C.3.5     D.4

5、A.700   B.800   C.930     D.1100

答案:4选C,5选B,

第一问关于平均 CPI,即对列出的 CPI 求平均数。4*35%+2*45%+6*20%=3.5。第二问求 MIPS,即每秒执行的百万条指令数。根据第一问 CPI,每条指令需要的时钟周期为 4,每个时钟周期为主 频的倒数,即 1/2.8G 秒,则每条指令需要时间 3.5/2.8G 秒。 每秒执行指令数为 1/(3.5/2.8G)=2.8G/3.5=0.8G=800M。(1M=106,1G=109)

6、中断向量提供( ).

A.     函数调用结束后的返回地址    B.     I/O 设备的接口地址

C.     主程序的入口地址   D.    中断服务程序入口地址

答案: D,中断向量就是指中断服务程序的入口地址,它存放着一条跳转到中 断服务程序入口地址的跳转指令。

7、以下关于认证和加密的叙述中,错误的是( )。

A.     加密用以确保数据的保密性 

B.     认证用以确保报文发送者和接收者的真实性

C.     认证和加密都可以阻止对手进行被动攻击

      D.    身份认证的目的在于识别用户的合法性,阻止非法用户访问系 统

答案: C,认证一般有账户名/口令认证、使用摘要算法认证和基于 PKI 的认证。 认证只能阻止主动攻击,不能阻止被动攻击。

8、访问控制是对信息系统资源进行保护的重要措施,适当的访问控 制能够阻止未经授权的用户有意或者无意地获取资源。计算机系统 中,访问控制的任务不包括( )。

A.审计    B.授权    C.确定存取权限    D.实施存取权限

答案: A,安全审计对主体访问和适用客体的情况进行记录和审查,以保证安 全规则被正确执行,并帮助分析安全事故产生的原因。与访问控制无关。

9、路由协议称为内部网关协议,自治系统之间的协议称为外部网关 协议,以下属于外部网关协议的是( )。

  A.RIP    B.OSPF     C. BGP     D.UDP

答案: C

RIP:RIP(Routing Information Protocol,路由信息协议)是一种内部网 关协议(IGP),是一种动态路由选择协议,用于自治系统(AS)内 的路由信息的传递。

OSPF:OSPF(Open Shortest Path First 开放式最短路径优先)是一个内 部网关协议(Interior Gateway Protocol,简称 IGP),用于在单一自治 系统(autonomous system,AS)内决策路由。是对链路状态路由协议 的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。 BGP:边界网关协议(BGP)是运行于 TCP 上的一种自治系统的路由 协议。 BGP 是唯一一个用来处理像因特网大小的网络的协议,也是 唯一能够妥善处理好不相关路由域间的多路连接的协议。

UDP:传输层协议。

10、所有资源只能由授权方或以授权的方式进行修改,即信息未经授 权不能进行改变的特性是指信息的( )。

A.完整性   B.可用性   C.保密性   D.不可抵赖性

答案: A,数据的机密性(保密性)是指数据在传输过程中不能被非授权者偷 看; 数据的完整性是指数据在传输过程中不能被非法篡改,本题涉及到修 改的只有完整性; 数据的真实性(不可抵赖性)是指信息的发送者身份的确认或系统中 有关主体的身份确认,这样可以保证信息的可信度; 可用性指的是发送者和接受者双方的通信方式正常。

11、在 Windows 操作系统下,要获取某个网络开放端口所对应的应用程序信息,可以使用命令( )。

A.ipconfig   B.traceroute  C.netstat   D.nslookup

答案: C

ipconfig  ( linux: ifconfig) (显示 TCP/IP 网络配置值,如:IP 地址,

MAC 地址,网关地址等)。

tracert(linux: traceroute):用于确定 IP 数据包访问目标所采取的路 径,若网络不通,能定位到具体哪个结点不通。 netstat:用于显示网络连接、路由表和网络接口信息。 nslookup(查询 DNS 记录)。

12、甲、 乙两个申请人分别就相同内容的计算机软件发明创造,向国务院专利行政部门门提出专利申请,甲先于乙一日提出,则( )。

A.     甲获得该项专利申请权

B.     乙获得该项专利申请权

C.     甲和乙都获得该项专利申请权

D.    甲和乙都不能获得该项专利申请权

答案: A,谁先申请则属于谁。

13、小王是某高校的非全 8 制在读研究生,目前在甲公司实习,负责 了该公司某软件项目的开发工作并撰写相关的软件文档。以下叙述 中,正确的是( )。

A.     该软件文档属于职务作品,但小王享有该软件著作权的全部 权利

B.     该软件文档属于职务作品,甲公司享有该软件著作权的全部权 利

C.     该软件文档不属于职务作品,小王享有该软件著作权的全部权 利

D.    该软件文档不属于职务作品,甲公司和小王共同享有该著作权 的全部权利

答案: B,软件著作权属于公司所有。

14、按照我国著作权法的权利保护期,以下权利中,( )受到永久 保护。

  A.发表权   B.修改权   C.复制权   D.发行权

 答案: B,著作权中修改权、署名权、保护作品完整权都是永久保护的。

15、结构化分析方法中,数据流图中的元素在( )中进行定义。

A.     加工逻辑   B.     实体联系图   C.  流程图   D.数据字典

答案: D,数据字典会对数据流图中元素进行定义说明。

16、良好的启发式设计原则上不包括( )。

A.     提高模块独立性   B.     模块规模越小越好 

C.     模块作用域在其控制域之内 D.    降低模块接口复杂性

答案: B

1、模块化设计要求高内聚、低耦合,模块独立体现的就是高内聚低 耦合。

2、在结构化设计中,系统由多个逻辑上相对独立的模块组成,在模 块划分时需要遵循如下原则:

(1)模块的大小要适中。系统分解时需要考虑模块的规模,过大的 模块可能导致系统分解不充分,其内部可能包括不同类型的功能,需 要进一步划分,尽量使得各个模块的功能单一;过小的模块将导致系 统的复杂度增加,模块之间的调用过于频繁,反而降低了模块的独立 性。不是越小越好。

(2)模块的扇入和扇出要合理。模块的扇入指模块直接上级模块的 个数。模块的直属下级模块个数即为模块的扇出。

(3)深度和宽度适当。深度表示软件结构中模块的层数,如果层数 过多,则应考虑是否有些模块设计过于简单,看能否适当合并。宽度 是软件结构中同一个层次上的模块总数的最大值,一般说来,宽度越 大系统越复杂,对宽度影响最大的因素是模块的扇出。在系统设计时, 需要权衡系统的深度和宽度,尽量降低系统的复杂性,减少实施过程 的难度,提高开发和维护的效率。需要控制模块接口的复杂性。

3、尽力使模块的作用域在其控制域之内。模块控制域:这个模块本 身以及所有直接或间接从属于它的模块的集合。模块作用域:指受该模块内一个判定所影响的所有模块的集合。

17、如下所示的软件项目活动图中,顶点表示项目里程碑,连接顶点 的边表示包含的活动,边上的权重表示活动的持续时间(天), 则完成 该项目的最短时间为(17)天。在该活动图中,共有(18)条关键路 径。

2020年11月软件设计师真题透析_第2张图片

17、A.17   B.19   C.20   D.22

18、A.1   B.2   C.3   D.4

答案: D B,关键路径:ABFJL 和 ADGIJL,项目工期:22 天,计算过程

2020年11月软件设计师真题透析_第3张图片

19、软件项目成本估算模型 COCOM01I 中,体系结构阶段模型基于( ) 进行估算。

A.应用程序点数量 B.功能点数量 C.复用或生成的代码行数 D.源代码的行数

答案: D,COCOMO II 模型也需要使用规模估算信息,体系结构阶段,在模型 层次结构中有 3 种不同规模估算选择,即:对象点、功能点和代码行。 应用组装模型使用的是对象点;早期设计阶段模型使用的是功能点, 功能点可以转换为代码行。体系结构模型把工作量表示为代码行数。

20、某表达式的语法树如下图所示,其后缀式(逆波兰式)是( )。

2020年11月软件设计师真题透析_第4张图片

A.abcd-+*    B.ab-c+d*    C.abc-d*+     D.ab-cd+*

答案: C,后缀式即后序遍历,左子树→右子树→根,是abc-d*+。

21、用 C/C++语言为某个应用编写的程序,经过( )后形成可执行程序。

A.    预处理、编译、汇编、链接

B.    编译、预处理、汇编、链接

C.    汇编、预处理、链接、编译

D.    链接、预处理、编译、汇编

答案: A,对于编译型语言,处理过程为:预处理-编译-链接,没有汇编过程, 对比来看,预处理、编译、汇编、链接最合适。.

22、在程序的执行过程中,系统用( )实现嵌套调用(递归调用)函数的正确返回。

A.队列    B.优先队列    C.栈    D.散列表

 答案: C,在递归调用中,需要在前期存储某些数据,并在后面又以存储的逆 序恢复这些数据,以提供之后使用的需求,因此,需要用到栈来实现 递归。简单的说,就是在前行阶段,对于每一层递归,函数的局部变 量、参数值以及返回地址都被压入栈中。在退回阶段,位于栈顶的局 部变量、参数值和返回地址被弹出,用于返回调用层次中执行代码的 其余部分,也就是恢复了调用的状态。

23、假设系统中有三个进程 P1、P2 和 P3,两种资源 R1、R2。如果 进程资源图如图①和图②所示,那么( )。

2020年11月软件设计师真题透析_第5张图片

A.     图①和图②都可化简

B.     图①和图②都不可化简

C.     图①可化简,图②不可化简

D.    图①不可化简,图②可化简

答案: C,所谓化简是指进程可以顺利地执行

图①当前状态下:

R1:已分配 2 个,剩余 1 个。

R2:已分配 3 个,剩余 0 个。

P1:已获得 1 个 R1,1 个 R2,无其他资源需求,可化简,化简后释 放当前 1 个 R1,1 个 R2。

P2:已获得 1 个 R2,仍需 2 个 R1,此时 R1 资源不足,P2 是阻塞结 点。等待 P1 释放后可化简。

P3:已获得 1 个 R1,1 个 R2,仍需 1 个 R2,此时 R2 资源不足,P3 是阻塞结点。等待 P1 释放后可化简。

图②当前状态下:

R1:已分配 3 个,剩余 0 个。

R2:已分配 2 个,剩余 0 个。

P1:已获得 1 个 R1,仍需 1 个 R2,此时 R2 资源不足,P1 是阻塞结 点。

P2:已获得 1 个 R1,1 个 R2,仍需 1 个 R1,此时 R1 资源不足,P2 是阻塞结点。

P3:已获得 1 个 R1,1 个 R2,仍需 1 个 R2,此时 R2 资源不足,P3 是阻塞结点。

所有结点均阻塞,无法化简。

24、假设计算机系统的页面大小为 4K,进程 P 的页面变换表如下表所示。若 P 要动问的逻辑地址为十六进制 3C20H,那么该逻辑地址经 过地址变换后,其物理地址应为( )。

2020年11月软件设计师真题透析_第6张图片

 A.2048H    B.3C20H    C.5C20H    D.6C20H

答案: D

1、根据页面大小4K(=212)可知,页内地址长度需要12位二进制表示。

2、根据逻辑地址3C20H,其中低12位二进制为页内地址,即对应十六进制低3位C20H 为页内地址,剩余高位3H为页号,转换为十进制结果为3。

3、查表可得,页号3对应的物理块号为6(即十六进制 6H),再拼接原页内地址C20H,即为最终的物理地址6C20H。

25、某文件系统采用索引节点管理,其磁盘索引块和磁盘数据块大小均为1KB字节且每个文件索引节点有8个地址项 iaddr[0]~iaddr[7], 每个地址项大小为4字节,其中 iaddr[0]~iaddr[4]采用直接地址索引, iaddr[5]和 iaddr[6]采用一级间接地址索引,iaddr[7]  采用二级间接地 址索引。若用户要访问文件userA 中逻辑块号为4和5的信息,则系 统应分别采用(25),该文件系统可表示的单个文件最大长度是( 26) KB。

25.

A.     直接地址访问和直接地址访问

B.     直接地址访问和一级间接地址访问

C. 一级问接地址访问和一级间接地址访问

D. 一级间接地址访问和二级间接地址访问

26、A.    517    B.     1029  C.     65797  D.    66053

答案: 25选B,26选D

其中 0~4 号节点为直接索引,对应逻辑块号为 0~4。

其中 5~6 号节点为一级间接索引方式,对应逻辑块号从 5 开始。 每个索引盘大小为 1KB,地址项大小为 4B,故每个索引盘有(1KB/4B)=256 个索引。

一级间接索引有 2 个盘块,共有 512 个索引,对应 512 个逻辑盘块。

其中 7 号节点为二级间接索引,共有 256*256=65536 个索引,对应 65536 个逻辑盘块。 单个文件最大为:(5+512+65536)*1KB=66053KB。

27、假设系统有 n (n≥5)  个进程共享资源 R,且资源 R 的可用数为 5。 若采用 PV 操作,则相应的信号量 S 的取值范围应为(                 )。

 A.-1~n-1    B.-5~5     C.-(n-1)~1    D.-(n-5)~5 

答案: D,PV信息量的取值表示资源数,最大值为初始可用资源5; 当信号量取值小于0时,可表示排队进程数,此时n个进程,最大排队数为n-5,信号量最小取值为-n-5)。

28、在支持多线程的操作系统中,假设进程 P 创建了线程 T1、T2 和T3, 那么以下叙述中错误的是( )。

A.     线程 T1、 T2 和 T3 可以共享程 P 的代码

B.     线程 T1、T2 可以共享 P 进程中 T3 的栈指针

C.     线程 T1、T2 和 T3 可以共享进程 P 打开的文件

D.    线程 T1、T2 和 T3 可以共享进程 P 的全局变量

答案: B,线程共享的内容包括:进程代码段、进程的公有数据(利用这些共享 的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述 符、信号的处理器、进程的当前目录、进程用户ID 与进程组ID  。 线程独有的内容包括:线程ID、寄存器组的值、线程的堆栈、错误返 回码、线程的信号屏蔽码。

29、喷泉模型是一种适合于面向(29)开发方法的软件过程模型。该 过程模型的特点不包括(30)。

29、A.对象   B.数据.   C.数据流   D.事件
30、A.以用户需求为动力    B.支持软件重用   C.具有迭代性    D.开发活动之间存在明显的界限

 答案: 29选A,30选D,喷泉模型是面向对象的开发模型。

31、若某模块内所有处理元素都在同一个数据结构上操作,则该模块的内聚类型为( )。

A.逻辑    B.过程    C.通信    D.功能

答案: C,

2020年11月软件设计师真题透析_第7张图片

32、软件质量属性中,( )是指软件每分钟可以处理多少个请求。

A.响应时间    B.吞吐量    C.负载    D.容量

答案: B,吞吐量:指在给定的时间内,系统所能处理的任务的数量。 响应时间:指系统对请求作出响应的时间。 容量:存储器所能存储的全部信息量称为该存储器的容量。

33、提高程序执行效率的方法一般不包括( )。

A.     设计更好的算法

B.     采用不同的数据结构

C.     采用不同的程序设计语言

D.     改写代码使其更紧凑

答案: D,改写代码仅使其结构上更紧凑,并不能提高执行效率问题。其他方式可以。

34、软件可靠性是指系统在给定的时间间隔内、在给定条件下无失效运行的概率。若MTTF和 MTTR分别表示平均无故障时间和平均修复时间,则公式( )可用于计算软件可靠性。

A.MTTF/(1+MTTF)   B.1/(1+MTTF)   C.MTTR/(1+MTTR)    D.1/(1+MTTR)

答案: A,可靠性可以用 MTTF/(1+MTTF)来度量。

35、用白盒测试技术对下面流程图进行测试,设计的测试用例如下表 所示。至少采用测试用例(35)才可以实现语句覆盖;至少采用测试 用例(36)才可以实现路径覆盖。

2020年11月软件设计师真题透析_第8张图片

35、A.①    B.②   C.③    D.④

36、A.①    B.①②   C.③④    D.①②③④

 答案: 35选A,36选D

根据测试用例:35题中的用例①可以满足覆盖所有语句,满足语句覆盖。 36题中的用例①可以满足路径ace,用例②可以满足路径abd,用例③可以满足路径 abe,用例④可以满足路径acd。所以满足路径覆盖需要测试用例①②③④。

37、面向对象程序设计语言 C++、JAVA 中,关键字( )可以用于区 分同名的对象属性和局部变量名。

A.private   B.protected    C.public     D.this

答案: D,this 可以区分同名的对象属性和局部变量名。

38、采用面向对象方法进行系统开发时,以下与新型冠状病毒有关的 对象中,存在“一般-特殊"关系的是( )。

A. 确诊病人和治愈病人  B. 确诊病人和疑似病人

C. 医生和病人               D.  发热病人和确诊病人

答案: D,发热病人是一般对象,确诊病人是发热病人的特殊化。

39、进行面向对象系统设计时,针对包中的所有类对于同-类性质的 变化;一个变化若对一个包产生影响,则将对该包中的所有类产生影 响,而对于其他的包不造成任何影响。这属于( )设计原则。

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

答案: D

共同封闭原则:包中的所有类对于同一种性质的变化应该是共同封 闭的。一个变化若对一个封闭的包产生影响,则将对该包中的所有类 产生影响,而对于其他包则不造成任何影响。面向对象设计的原则之一。

共同重用原则:面向对象编程术语,指一个包中的所有类应该是共同 重用的。如果重用了包中的一个类,那么也就相当于重用了包中的所 有类。

开放-封闭原则:对扩展开放,对修改封闭。 接口隔离原则:使用多个专门的接口比使用单一的总接口要好。

40、多态有不同的形式,( )的多态是指同一个名字在不同上下文 中所代表的含义不同。

A.参数    B.包含    C.过载    D. 强制

答案: C,参数多态:应用广泛、最纯的多态。 包含多态:同样的操作可用于一个类型及其子类型。包含多态一般需 要进行运行时的类型检查。包含多态在许多语言中都存在,最常见的 例子就是子类型化,即一个类型是另外一个类型的子类型。 强制多态:编译程序通过语义操作,把操作对象的类型强行加以变换, 以符合函数或操作符的要求。 过载多态:同一个名(操作符﹑函数名)在不同的上下文中有不同的 类型。 目前软设考查比较多的是过载多态。

41、某类图如图所示,下列选项错误的是( )。

2020年11月软件设计师真题透析_第9张图片

 A.    一个 A1 的对象可能与一个 A2 的对象关联

B.    一个 A 的非直接对象可能与一个 A1 的对象关联

C.     类 B1 的对象可能通过 A2 与 C1 的对象关联

D.    有可能 A 的直接对象与 B1 的对象关联

答案: D,A 是抽象类,不能直接产生对象.

42、UML 图中,对象图展现了(42),(43)所示对象图与下图所示类图不一致。

2020年11月软件设计师真题透析_第10张图片

A.     一组对象、接口、协作和它们之间的关系

B.    一组用例、参与者以及它们之间的关系

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

D.    以时间顺序组织的对象之间的交互活动

43、2020年11月软件设计师真题透析_第11张图片.   

答案: 42选C,43选D,多重度:图示表示的是1个A 可以对应多个B,1个B只能对应1个A,

对象图:展现了某一个时刻一组对象以及它们之间的关系。

类图:展现了一组对象、接口、协作和它们之间的关系。

用例图:展现了一组用例、参与者以及它们之间的关系。  

44、某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、 饮料和玩具,其餐品种类可能不同,但制作过程相同。前台服务员 (Waiter) 调度厨师制作套餐。欲开发一软件,实现该制作过程,设计 如下所示类图。该设计采用(44)模式将一个复杂对象的构建与它的 表示分离,使得同样的构建过程可以创建不同的表示。其中,(45) 构造一个使用 Builder 接口的对象。该模式属于(46)模式,该模式适用于(47)的情况。

2020年11月软件设计师真题透析_第12张图片

44、A.生成器(Builder)        B.抽象工厂(Abstract Factory)

       C.原型(Prototype)       D.工厂方法(Factory Method)

答案:A,本题类图中有明确的builder关键字,是生成器模式。

45、A.PizzaBuilder             B.SpicyPizaBuilder        C.Waiter                   D.Pizza

答案:C,

Builder:抽象建造者,为创建一个 Product 对象各个部件指定抽象接 口,把产品的生产过程分解为不同的步骤,从而使具体建造者在具体 的建造步骤上具有更多弹性,从而创造出不同表示的产品。 ConcreteBuilder:具体建造者,实现 Builder 接口,构造和装配产品的 各个部件定义并明确它所创建的表示,提供一个返回这个产品的接 口。

Director:指挥者,构建一个使用 Builder 接口的对象。即对应本题 waiter。

Product:产品角色,被构建的复杂对象,具体产品建造者,创建该 产品的内部表示并定义它的装配过程。包含定义组成组件的类,包括 将这些组件装配成最终产品的接口。

46、A.创建型对象               B.结构型对象        C.行为型对象               D.结构型类 

答案: A,生成器(构建器)模式的意图是:将一个复杂类的表示与其构造相分离,使得相同的构建过程能够得出不同的表示。

 47、

A.    当一个系统应该独立于它的产品创建、构成和表示时

B.     当一个类希望由它的子类来指定它所创建的对象的时候

C.     当要强调一系列相关的产品对象的设计以便进行联合使用时

D.    当构造过程必须允许被构造的对象有不同的表示时

 答案: D,适用场景(复杂对象构造) 当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装 配方式时。当构造过程必须允许被构造的对象有不同的表示时。

48、函数 foo()、hoo 定义如下,调用函数 hoo()时,第-个参数采用传 值(call by value)方式,第二个参数采用传引用(call by reference)方 式。设有函数调(函数 foo(5),那么"print(x)”执行后输出的值为( )。 

2020年11月软件设计师真题透析_第13张图片

 A.24    B.25     C.30     D.36

答案: A,根据题干描述的调用过程,hoo()第一个参数是传值调用,第二个参 数是引用调用,因此,在 hoo()中对 a 的修改最终会影响到原 foo()函 数中传递的参数 x,也就是最终 x 打印的值。根据 hoo()函数过程,x 初始传参为原 args=5,此时 x=x-1=4(注意这 里的 x 是局部变量,只在 hoo()使用),a 初始传参为原 x=6,此时 a=a*x=6*4=24,最终全局变量 x 值为 24。(注意这里的原 x 是全局变 量,在 hoo()参数中可以理解为别名为 a,现 x 是局部变量,也就是之 前求取的 4)。

49、程序设计语言的大多数语法现象可以用 CFG (上 下文无关文法)表示。下面的 CFG 产生式集用于描述简单算术表达式,其中+、-、* 表示加、减、乘运算,id 表示单个字母表示的变量,那么符合该文法 的表达式为(  )。

 P:E→E+T|E-T|T

T→T*F|F

F→Flid

A.a+-b-c   B.a*(b+c)   C.a*-b+2   D.-a/b+c

 答案: A 这里没有终结符“(”、")"、"/"。在推导的过程中,会发现"*"只能通过 T 推导,此时必定经过了 E+T 或 E-T,也就是说“+”或“-”必定在“*”前面。只有 A 能够被推导,推导过程如下:

2020年11月软件设计师真题透析_第14张图片

(1)通过 E→E-T,从起始符 E 得到 E-T;

(2)通过 E→E+T,将上面的 E 展开为 E+T,得到 E+T-T;

(3)通过 E→T→F→id→单个字母a;

(4)通过 T→F→-F→-id→单个字母-b;

(5)通过 T→F→id→单个字母c。

综上,可以从起始符 E 得到 a+-b-c。

50、某有限自动机的状态转换图如下图所示,该自动机可识别( )。

2020年11月软件设计师真题透析_第15张图片

 A.1001          B.1100          C.1010          D.0101

答案: B

1001 从 s0 出发,1001 到达 s1,没有到达终态 s2,不能被自动机识 别。

1100 从 s0 出发,1100 成功到达终态 s2,可以被自动机识别。

1010 从 s0 出发,1010 到达 s0,没有到达终态 s2,不能被自动机识 别。

0101 从 s0 出发,0101 到达 s1,没有到达终态 s2,不能被自动机识 别。

51、某高校信息系统设计的分 E-R 图中,人力部门定义的职工实体具有属性:职工号、姓名、性别和出生日期;教学部门定义的教师实体 具有属性:教师号、姓名和职称。这种情况属于(51),在合并 E-R 图时,(52)解决这一冲突。

51、A.属性冲突     B.命名冲突     C.结构冲突    D.实体冲突

答案: B

属性冲突。同一属性可能会存在于不同的分 E-R 图,由于设计人员不 同或是出发点不同,对属性的类型、取值范围和数据单位等可能会不 一致。

命名冲突。相同意义的属性在不同的分 E-R 图中有着不同的命名,或 是名词相同的属性在不同的分 E-R 图中代表这不同的意义。

结构冲突。同一实体在不同的分 E-R 图中有不同的属性,同一对象在 某一分 E-R 图中被抽象为实体,而在另一分 E-R 图中又被抽象为属性, 需要统一。

52、

A.    职工和教师实体保持各自属性不变

B.     职工实体中加入职称属性,删除教师实体

C.     教师也是学校的职工,故直接将教师实体删除

D.    将教师实体所有属性并入职工实体,删除教师实体

答案: B,根据题干来看,因为存在冲突,需要某些操作去解决,保持不变无法解决问题。直接删除教师实体,会丢失教师中的职称属性。并入的方 式,会重复记录姓名属性。将职称属性加入职工,然后删除职工实体, 过程中还需要对属性名称进行统一调整。

53、假设关系R, U={A,B,C,D}, F= {A→BC,AC→D,B→D},那么在关系R中( )。

     A.  不存在传递依赖,候选关键字A           B. 不存在传递依赖,候选关键字 AC

 C. 存在传递依赖 A→D,候选关键字A         D. 存在传递依赖 B→D,候选关键字 C

答案: C

首先找到入度为0 的属性集合A,根据已知的A→BC,可得ABC,根据已知的AC->D,可得 ABCD,所以A可以作为候选关键字,一个A属性就可以推出其他所有属性,所以可不必 要再加上C,如果加上C就变得冗余了,因此这个单独的A就可以作为候选键,所在AC中 选,这里根据amstrong公理中的分解规则,根据A→BC可以得到A→B,A→C,同时存在B→D,根据传递律此时有A→D,这就存在了传递依赖,所以选C。

54、关系 R、S 如下表所示,的结果集为(54),R、S 的左外 联接、右外联接和完全外联接的元组个数分别为(55)。 2020年11月软件设计师真题透析_第16张图片

 54、

A.{ (2,1,4),(3,4,4)}

B.{ (2,1,4,8),(3,4,4,4)}

C.{ (2,1,4,2,1,8).(3,4,4,3,4,4)}

D.{ (1,2,3,1,9,1),(2,1,4,2,1,8),(3,4,4,3,4,4),(4,6,7.4,8,3)}
54答案: B 第一空根据自然连接的结果,属性列数是二者之和减去重复属性列, 所以结果有 4 个属性列。 元组行满足同名属性列取值相等,同样满 足要求。

55、A.2,2,4   B.2,2,6    C.4,4,4     D.4,4,6

55答案: D 第二空左外连接、右外连接、完全外连接,在软设中考查较少。左外连接:取出左侧关系中所有与右侧关系中任一元组都不匹配的元 组,用空值 NULL填充所有来自右侧关系的属性。结果如下:

2020年11月软件设计师真题透析_第17张图片

 右外连接:取出右侧关系中所有与左侧关系中任一元组都不匹配的元组,用空值NULL 填充所有来自左侧关系的属性。结果如下

2020年11月软件设计师真题透析_第18张图片

 完全外连接:完成左外连接和右外连接操作后,从结果中将重复的记录去掉,剩下的就是。结果如下:

2020年11月软件设计师真题透析_第19张图片

 56、某企业信息系统采用分布式数据库系统。”当某一场地故障时, 系统可以使用其他场地上的副本而不至于使整个系统瘫痪"称为分布 式数据库的( )。

A.共享性    B.自治性    C.可用性    D.分布性

 答案: C

分布式数据库是由一组数据组成的,这组数据分布在计算机网络的 不同计算机上,网络中的每个节点具有独立处理的能力(称为场地自治),它可以执行局部应用,同时,每个节点也能通过网络通信子系 统执行全局应用。分布式数据库系统是在集中式数据库系统技术的基 础上发展起来的,具有如下特点:

(1)数据独立性。在分布式数据库系统中,数据独立性这一特性更 加重要,并具有更多的内容。除了数据的逻辑独立性与物理独立性外, 还有数据分布独立性(分布透明性)。

(2)集中与自治共享结合的控制结构。各局部的 DBMS 可以独立地 管理局部数据库,具有自治的功能。同时,系统又设有集中控制机制,协调各局部 DBMS 的工作,执行全局应用。

(3)适当增加数据冗余度。在不同的场地存储同一数据的多个副本, 这样,可以提高系统的可靠性和可用性,同时也能提高系统性能。

(4)全局的一致性、可串行性和可恢复性。 本题描述的是可用性。

57、以下关于 Huffman (哈夫曼)树的叙述中,错误的是( )。

A.     权值越大的叶子结点离根结点越近

B.     Huffman (哈夫曼)树中不存在只有一个子树的结点

C.     Huffman (哈夫曼)树中的结点总数一定为奇数

D.     权值相同的结点到树根的路径长度一定相同

答案: D

权值相同的结点可能会因为构造的形态不同,导致构造结果不一样, 权值不一样,所以描述D是错误的。二叉树存在一个特定度为0的结点(叶子结点)记作n0,度为2的结点记作n2,满足n2+1= n0。哈夫曼树只有度为0和度为2的结点, 二者 必定差值为1 ,因 此 ,结点总数即二者之和 n0+n2=(n2+1)+n2=2n2+1时,必定为奇数。

58、通过元素在存储空间中的相对位置来表示数据元素之间的逻辑关系,是( )的特点。

A.顺序存储     B.链表存储    C.索引存储      D.哈希存储

答案: A,顺序存储时,元素的逻辑相对位置与物理相对位置是一致的。

59、在线性表 L 中进行二分查找,要求 L( )。

A.     顺序存储,元素随机排列

B.     双向链表存储,元素随机排列

C.     顺序存储,元素有序排列

D.    双向链表存储,元素有序排列

答案: C,二分查找的前提条件是顺序存储,且有序排列。

60、某有向图如下所示,从顶点 v1 出发对其进行深度优先遍历,可 能能得到的遍历序列是(60); 从顶点 v1 出发对其进行广度优先遍 历,可能得到的遍历序列是(61)。

2020年11月软件设计师真题透析_第20张图片

①v1 v2 v3 v4 v5

②v1v3 v4 v5 v2

③v1 v3 v2 v4 v5

④v1v2 v4 v5 v3

60、A.①②③    B.①③④   C.①②④   D.②③④

答案: D,作为深度遍历,v1-v2,下一个遍历的结点,一定是有 v2 指向的 v4或 v5,序列①不符合要求。因此本题排除①后就只能选D。

61、A.①②    B.①③    C.②③   D.③④

答案: B

作为广度遍历,v1 下一个访问的一定时期邻接顶点 v2 或 v3,这 2个顶点访问结束后,才能往后进行遍历,因此只有序列①③符合要求。

62、对数组 A=(2,8,7,1,3,5,6,4)用快速排序算法的划分方法进行一趟划 分后得到的数组 A 为(62)(非递减排序, 以最后一个元素为基准元 素)。进行一趟划分的计算时间为(63)。

 62、A.(1,2,8,7,3,5,6,4)     B.(1,2,3,4,8,7,5,6)     C.(2,3,1,4,7,5,6,8)    D.(2,1,3,4,8,7,5,6)

答案: C

首先选定基准元素为最后一个元素(题干给出的要求),下面进行排 序过程:

(1)基准元素 4 与另一端待排第一个元素 2 进行比较,满足非递减, 不需要交换;

(2)基准元素 4 与另一端待排第一个元素 8 进行比较,不满足非递 减,交换位置,此时序列为(2,4,7,1,3,5,6,8);

(3)基准元素 4 与另一端待排第一个元素 6 进行比较,满足非递减, 不需要交换;

(4)基准元素 4 与另一端待排第一个元素 5 进行比较,满足非递减, 不需要交换;

(5)基准元素 4 与另一端待排第一个元素 3 进行比较,不满足非递 减,交换位置,此时序列为(2,3,7,1,4,5,6,8);

(6)基准元素 4 与另一端待排第一个元素 7 进行比较,不满足非递 减,交换位置,此时序列为(2,3,4,1,7,5,6,8);

(7)基准元素 4 与另一端待排第一个元素 1 进行比较,不满足非递 减,交换位置,此时序列为(2,3,1,4,7,5,6,8)。

63、A.O(1)    B.O(Ign)    C.O(n)    D.O(nlgn)

答案: C

因为一趟划分的过程会与整个序列 n 个元素进行比较,因此一趟划分的时间复杂度为 O(n)。

64、某简单无向连通图 G 的顶点数为 n,则图 G 最少和最多分别有( ) 条边。

A.    n,n2/2

B.    n-1,n*(n-1)/2

C.    n,n*(n-1)/2

D.    n-1,n2/2

答案: B,可以简单画出一个无相连通图,比如两个顶点相连接,此时结点n=2,边最少为1,最多也为1。一个无向图 G=(V,E) 是连通的,那么边的数目大 于等于顶点的数目减一:|E|>=|V|-1,而反之不成立。如果 G=(V,E) 是有向 图,那么它是强连通图的必要条件是边的数目大于等于顶点的数目:|E|>=|V|,而反之不成立

65、根据渐进分析,表达式序列:n4, lgn, 2n, 1000n, n2/3, n!从低到高排序为( )。

A. Ign,1000n, n2/3, n4, n!, 2n

B. n2/3,1000n, lgn, n4, n!, 2n

C. lgn,1000n, n2/3, 2n, n4, n!

D. Ign, n2/3, 1000n, n4, 2n, n!

答案: D,根据常见的时间复杂度,按数量级递增排列依次为: 常数阶O(1)、对数阶O(log2n)、线性阶O(n)、线性对数阶 O(nlog2n)、平方阶O(n2)、立方阶O(n3)、k次方阶O(nk)、指数阶 O(2n)、阶乘阶O(n!)

66、采用 DHCP 动态分配 IP 地址,如果某主机开机后没有得到 DHCP服务器的响应。则该主机获取的 IP 地址属于网络( )。

A.202.117.0.0/24    B.192.168.1.0/24   

C.172.16.0.0/16     D.169.254.0.0/16

答案: D,无效的 IP 地址:169.254.X.X(windows) 和 0.0.0.0(linux)。

67、在浏览器的地址栏中输入 xxxftp.abc.can.cn,在该 URL 中( ) 是要访问的主机名。

 A.xxxftp    B.abc     C.can     D.cn

答案: A,根据DNS中域名结构分析,域名从右向左,最左边的是主机名称,后面是域名,联合起来就是指cn域中的can域中的abc域中的xxxftp主机。

68、当修改邮件时,客户与 POP3 服务器之间通过(68)建立连接,所使用的端口是(69)。

68、A. HTTP     B.TCP     C. UDP     D. HTTPS

69、A.52     B.25     C.1100     D.110

答案:  BD,POP3 是基于 TCP 协议的,默认端口 110。

70、因特网中的域名系统(Domain Name System)是一个分层的域名, 在根域下面是顶级域,以下顶级域中,( )属于国家顶级域。

 A.NET     B.EDU     C. COM     D.UK

答案: D,UK 即联合王国,英国。

Regardless of how well designed, constructed, and tested a system or application may be, errors or bugs will inevitably occur. Once a systemhas been(71),it enters operations and support.Systems support is the ongoing technical support for user, as well as the maintenance required to fix any errors, omissions,or new requirementsthat may arise. Before an information system can be(72), it must be in operation. System operation is the day-to-day, week-to-week, month-to-month, and year-t-year ( 73 ) of an information system's business processes and application programs.Unlike systems analysis, design, and implementation, systems support cannot sensibly be(74)into actual phases that a support project must perform. Rather, systems support consists of four ongoing activities that are program maintenance, system recovery, technical support, and system enhancement.Each activity is a type of support project that is(75 )by a particular problem,event, or opportunity encountered with the implemented system.

71、A.designed  B.implemented C.investigated  D.analyzed

【解析】设计  实现  调查  分析

答案: B

72、A.supported  B.tested  C.implemented   D.constructed

【解析】支持  测试  实现  构造

答案: A

73、A.construction   B.maintenance   C.execution  D.implementation

【解析】建设  维护  执行  实现

答案: C

74、A.broke .  B.formed   C.composed  D.decomposed

【解析】打破  形成  组成  分解

答案: D

75、A.triggered B.leaded C.caused D.produced  

【解析】触发  含铅  引起  生产

答案: A

整体翻译:

无论一个系统或应用程序的设计、构造和测试有多好,错误或者漏 洞都将不可避免地发生。一旦系统被(实施),它就进入了操作和支 持阶段。 系统支持是对用户的持续技术支持,以及修复可能出现的任何错误、 遗漏或新需求所需的维护。在(支持)信息系统之前,它一定已经在 运行状态了。系统运行就是信息系统的业务流程和应用程序日复一日、周复一周、月复一月、年复一年的(执行情况)。与系统分析、设计和实现不同,系统支持不能合理地(划分)为支持 项目必须执行的实际阶段。相反,系统支持包括四个正在进行的活动, 即程序维护、系统恢复、技术支持和系统增强。每个活动是一种支持 项目,它是由所实现系统遇到的特定问题、事件或机会(触发)。

2020年下半年软件设计师下午真题及答案解析

第 1 题

某工厂制造企业为了开发软件智能检测以有效提升检测效率,节约人 力资源,该系统的主要功能是:

(1)基础信息管理。管理员对检测标准和检测规则等基础信息设置。

(2)检测模型部署。 管理员对常用机器学习方法建立的检测模型分布。

(3)图像采集。实时将检测多样的产品待检测建分存储,包括产品 结构,生产时间,图像信号和产品图像。

(4)缺陷检测。根据检测模型和检测质量标准对图像采集所收到的 产品检测信息中所有图像进行检测或所有图像检测合格。若一个产品 出现一张图像检测不合格,就表示该产品不合格,对不合格产品,其 检测结果包括,产品型号和不合格类型。

(5)质量检测。根据监控规则对产品质量进行监控将检测情况展示 给检测业务员,若满足条件。向检测业务员发送质量检测,质量检测 是发起远程控制部分,检测设备发送控制指令进行处理。

 (6)模型监控。在系统中部署的模型、产品的检测信息结合基础信 息进行监测分析,将模型运行情况发给监控人员。 现采用结构化方法对智能检测系统,进行分析与设计,获得如图 1-1的上下文数据流图和图 1-2 的数据流图。

2020年11月软件设计师真题透析_第21张图片

2020年11月软件设计师真题透析_第22张图片

问题:1.1      (4 分)

使用说明中的语句对图 1-1 中的实体 E1~ E4 的名称。

问题:1.2      (3 分)

使用说明中的语句对图 1-2 中的数据存储 D1~D3 的名称。

问题:1.3      (5 分)

根据注明和图中术语,补齐图 1-2 中缺失的数据及起点和终点。

问题:1.4      (3 分) 根据说明,采用结构化语言对缺陷检测的加工逻辑进行描述。

问题:1.1答案解析:

E1:检测业务员;E2:管理员;E3:检测设备;E4:监控人员

问题:1.2答案解析:

D1:模型文件;D2:产品检测信息文件;D3:基础信息文件

问题:1.3答案解析:2020年11月软件设计师真题透析_第23张图片   问题:1.4答案解析: 根据说明,采用结构化语言对缺陷检测的加工逻辑进行描述。

DO{

检测所收到的所有图像; IF(出现一张图像检测不合格) THEN{

返回产品不合格;

不合格产品检测结果=产品星号+不合格类型;

} ENDIF

} ENDDO

第 2 题

M 集团拥有多个分公司,为了方便集团公司对各个分公司职员进行有 效管理,集团公司决定构建一个信息平台以满足公司各项业务管理需求。

【需求分析】 1、分公司关系模式需要记录的信息包括公司编号、名称、经理号、 联系地址和电话。分公司编号唯一标记分公司关系模式中的每一个 元组,每个分公司各有一名经理,负责分公司的管理工作,每个分公 司设立仅为本分公司服务的多个业务部,业务部包括:研发部、财务 部、采购部、交易部等。

2、业务部关系模式需要记录的信息包括业务部的编号、名称、地 址、电话和分公司编号,业务部编号唯一标记业务部关系模式中每个 元素,每个业务部各有一名主管负责业务部的管理工作,每个业务部 有多名职员,每个职员只能来源于一个业务部。 3、职员关系模式需要记录的信息包括职员号、姓名、所属业务部编 号、岗位、电话、家庭成员姓名和成员关系。其中职员号唯一标记职 员关系,岗位包括:经理、主管、研发员、业务员等。

【关系模式】

分公司(分公司编号、名称、(a)、 联系地址 )

业务部(业务部编号、名称、(b)、 电话)

  职员(职员号、姓名、岗位、(c)、 电话、家庭成员姓名、关系)

【概念模式设计】

2020年11月软件设计师真题透析_第24张图片

 问题:2.1      (4 分)

根据问题描述,补充 4 个联系,完善图 2-1 的实体联系图,联系名可 用联系 1、联系 2、联系 3 和联系 4 代替 ,联系的类型为 1 : 1、1 : n 和 m: n(或 1 : 1、1: *和*:*)

问题:2.2      (3 分)

根据题意将以上关系模式中的空(a) ~ (c)的属性补充完整,并填入对应 位置。

问题:2.3      (4 分)

(1)分析分公司关系模式的主键和外键

 (2)分析业务部关系模式的主键和外键

问题:2.4      (4 分) 在职员关系模式中,假设每个职员有多名家庭成员,那么职员关系模 式存在什么问题?应如何解决?

问题1答案解析:

2020年11月软件设计师真题透析_第25张图片

问题2答案解析:

(a)经理号,电话

(b)地址,分公司编号

(c)所属业务部编号

问题3答案解析:

分公司:主键-分公司编号  外键-经理号 业务部:主键-业务部编号  外键-分公司编号

问题4答案解析: 在职员关系中,如果每个职员有多名家庭成员,会重复记录多条职员信息及对应家庭成员,会产生数据冗余、插入异常、更新异常、删除 异常等问题

处理方式: 对职员关系模式进行拆分,职员1(职员号、姓名、岗位、所属业务 部编号,电话);职员2(职员号,家庭成员姓名,成员关系)。

第3 题

某房产公司,欲开发一个房产信息管理系统,其主要功能描述如下:

1.公司销 售的房产Property,分为住宅House和公寓Cando两类。针对房产,系统存储 房产证明,地址,建造年份,建造面积,销售报价,房产照片以及销售状 态(在售,售出,停售)等信息。对于公寓,还需存储是否有等信息。

2.  公司雇佣了多名房产经纪Agent,负责销售房产,系统中需要存储房产 经纪的基本信息,包括:姓名,家庭住址,联系电话,房产的起止时 间等等。一套房产同一时间仅由一名房产经纪负责销售,系统中记录 房产经纪负责房产的起始时间和终止时间。

3.系统用户User包括房产经纪和系统管理员Manager,用户需经过系统身份验证之后,才能登录系统。房产经纪登录系统之后,可以录入负责销售的房产信息。房产经纪可以修改其负责的房产信息,但需要经过系统管理员的审批授权。

4.系统管理员可以从系统中导出所有房产的信息列表,系统管理员定期将信息 和销售的房产,进行归纳,若公司确定不再销售某套房产, 系统管理员将房产信息从系统中删除。

现采用面向对象方法开发该系统得到如图3-1 所示的图例和3- 2 所示的图。

2020年11月软件设计师真题透析_第26张图片

 问题:3.1   (7分)

(1)根据证明中描述,分别给图 3-1 中 A1 到 A2 所对应的名称以及U1 到 U3 所对应的用例名称。

(2)根据证明中描述,分别给图 3-1 中(a)和(b)用例之间的关系。

问题:3.2                     (6 分)

根据证明中描述,分别给图 3-2 中 C1~C6 所对应的类名称。

问题:3.3      (2 分)

图3-2 中AgentList 是一个英文名称 ,用来进一步阐述C1 和C6 之间 的关系 根据注明中的描述,绘出AgentList 的主要属性。

问题1答案解析:

1)A1:房产经纪;A2:系统管理员

U1:审批授权;U2:修改房产信息;U3:删除房产信息

2)(a):  include包含关系;(b):  extends扩展关系

问题2答案解析:

C1: 房产; C2: 住宅; C3: 公寓;

C4:用户; C5:管理员; C6:房产经纪

C1: Property; C2: House; C3: Cando; C4:User; C5:Manager; C6:Agent

问题3答案解析:

姓名,房号,起始时间,结束时间

第 4 题

希尔排序算法又称最小增量排序算法,其基本思想是:

步骤 1 :构造一个步长序列 delta1、delta2...、deltak  ,其中 delta1=n/2  , 后面的每个 delta 是前一个的 1/2  , deltak=1;

步骤 2 :根据步长序列、进行 k 趟排序;

步骤 3 :对第 i 趟排序,根据对应的步长 delta,将等步长位置元素分 组,对同一组内元素在原位置上进行直接插入排序。

【C 代码】

下面是算法的 C 语言实现。

(1)常量和变量说明

data:待排序数组 data,长度为 n,待排序数据记录在 data[0]、 data[1]、...、data[n-1]中。

n:数组 a 中的元素个数。

delta:步长数组。

(2)C 程序  

#include 
void shellsort(int data[ ], int n){
    int *delta,k,i,t,dk,j;
    k=n;
    delta=(int *)nalloc(sizeof(int)*(n/2));
    if(i=0)
        do{
            ( 1 ) ; 
            delta[i++]=k;
        }while ( 2 ) ; 
    i=0;
    while((dk=delta[i])>0){
        for(k=delta[i];k=0&&t

问题:4.1      (8 分)

根据说明和 c 代码,填充 c 代码中的空(1) ~ (4)。

问题:4.2      (4 分)

根据说明和 c 代码,该算法的时间复杂度(5)O(n2) (小于、等于或大于)。该算法是否稳定(6) (  是或否)。

问题:4.3       (3 分)

对数组(15、9、7、8、20、-1、4)用希尔排序方法进行排序,经过 di-趟排后得到的数组为(7)。

问题1答案解析:

(1)k=k/2

(2)k>1

(3)data[k]

(4)data[j+dk]=t

问题2答案解析:

(5)小于

(6)否

问题3答案解析:

(7)(4,9,-1,8,20,7,15)

5.在线支付(Java)

阅读下列说明和(java代码),将应填入(n)处的字句写在答题纸对应栏内。

[说明]在线支付是电子商务的一个重要环节,不同的电子商务平台提供不同的支付接口,现在需要给不同的商务平台的支付接口,使得客户在不同平台购物时,不需要关系具体的支付接口。拟采用中介者( Mediator )设计模式来实现该需求,所设计的类图如图6-1所示。 2020年11月软件设计师真题透析_第27张图片

2020年11月软件设计师真题透析_第28张图片

 答案解析:

(1) void buy(double money, WebService service)

(2) WebServiceMediator

(3) abstract void buyService(double money)

(4) mediator.buy(money, this)

(5) mediator.buy(money, this)

以上就是2020年11月软件设计师上午和下午的真题透视,你的目标是上午下午都是45分哦,牛逼Plus,文字描述还是粗糙,视频分析更加到位舒服,随时撩我留言,全心全意为您服务。

 

自强创业,群英荟萃。行销天下,唯我独尊。

你可能感兴趣的:(软件设计师真题透析,开源,c5交付)