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

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

A.操作系统进行管理

B.存储管理软件进行管理

C.程序员自行安排

D.硬件自动完成

【解析】

Cache的概念考查:Cache与主存地址映射由硬件完成。

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

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

【解析】

CPU子部件分类考查,PC是控制器中的子部件。

控制器

是分析和执行指令的部件

  1. 指令寄存器
  2. 指令译码器
  3. 程序计数器
  4. 定时和控制电路
  5. 堆栈和堆栈指针

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

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

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

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

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

【解析】

两个浮点数相加减,首先需要比较阶码大小,使小阶相大阶看齐(称为 “对阶”)。即小阶的尾数向右移位(相当于小数点左移),每右移一位,其阶码加 1,直到阶码相等,右移的位数等于阶差。

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

指令A

指令B

指令C

比例

35%

45%

20%

CPI

4

2

6

1)A.25    B.3     C.3.5     D.4

(2)A.700   B.800   C.930     D.1100

【解析】

本题考查计算机性能指标。

第一问关于平均CP,即对列出的CP求平均数。

4 * 35 % + 2 * 45 % + 6 * 20 % = 3.5

第二问求MPS,即每秒执行的百万条指令数。

根据第一问CP,每条指令需要的时钟周期为4,每个时钟周期为主频的倒数,即1/2.8G秒,则每条指令需要时间3.5/2.8G秒。

每秒执行指令数为1/(3.5/2.8g)=2.8g/3.5=0.8g=800M。(1M=10的6次方, 1G=10的9次方)

6中断向量提供(  )。

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

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

【解析】

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

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

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

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

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

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

【解析】

认证和加密的区别在于:

加密用以确保数据的保密性,阻止对手的被动攻击,如截取,窃听等;

认证用以确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。

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

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

【解析】

访问控制包括三个任务:

  1. 授权:确定哪些主体有权访问哪些客体
  2. 确定访问权限(读、写、执行、删除、追加等存取方式的组合)
  3. 实施访问权限

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

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

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

【解析】

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.不可抵赖性

【解析】

数据机密性(保密性)是指数据在传输过程中不能被非授权者偷看。

数据的完整性是指数据在传输过程中不能被非法篡改,本题涉及到修改的只有完整性。

数据的真实性(不可抵赖性)是指信息的发送者身份的确认或系统中有关主体的身份确认,这样可以保证信息的可信度。

可用性指的是发送者和接收者双方的通信方式正常。

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

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

【解析】

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

tracert(linux:traceroute):用于确定 IP数据包访问目标所采取的路径,若网络不通,能定位到具体哪个结点不通。

netstat:用于显示网络连接、路由表和网络接口信息。

nslookup:查询DNS记录。

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

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

B.乙获得该项专利申

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

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

【解析】

一份专利申请文件只能就一项发明创造提出专利申请。一项发明只授予一项专利,同样的发明申请专利,则按照申请时间的先后决定授予给谁。

两个以上的申请人在同一日分别就同样的发明创造申请专利的,应当在收到国务院专利行政部门的通知后自行协商确定申请人。

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

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

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

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

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

【解析】

职务开发:

如果开发者在单位或组织中任职期间,所开发的软件符合以下条件,则软件著作权应归单位或组织所有。

  1. 针对本职工作中明确规定的开发目标所开发的软件。
  2. 开发出的软件属于从事本职工作活动的结果。
  3. 使用了单位或组织的资金、专用设备、未公开的信息等物质、技术条件,并由单位或组织承担责任的软件。

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

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

【解析】

知识点:著作权保护期限

作者的署名权、修改权、保护作品完整权的保护期不受限制

公民的作品,其发表权、使用权和获得报酬权的保护期为作者终身及其死亡后50年,截止于作者死亡后第50年的12月31日;如果是合作作品,截止到最后死亡的作者死亡后第50年的12月31日。

法人或其他组织的作品、著作权(署名权除外)由法人或者其他组织享有的职务作品,其发表权、使用权和获得报酬权的保护期为50年,截止于作品首次发表后第50年的12月31日,但作品自创作完成后50年内未发表的,著作权法不再保护。

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

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

【解析】

数据字典会对数据流图中元素进行定义说明。

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

A.提高模块独立性

B.模块规模越小越好

C.模块作用域在其控制域之内

D.降低模块接口复杂性

【解析】

  1. 模块化设计要求高内聚、低耦合,模块独立体现的就是高内聚低耦合。
  2. 在结构化设计中,系统由多个逻辑上相对独立的模块组成,在模块划分时需要遵循如下原则:
    1. 模块的大小要适中。系统分解时需要考虑模块的规模,过大的模块可能导致系统分解不充分,其内部可能包括不同类型的功能,需要进一步划分,尽量使得各个模块的功能单一;过小的模块将导致系统的复杂度增加,模块之间的调用过于频繁,反而降低了模块的独立性。不是越小越好。
    2. 模块的扇入和扇出要合理。模块的扇入指模块直接上级模块的个数。模块的直属下级模块个数即为模块的扇出。
    3. 深度和宽度适当。深度表示软件结构中模块的层数,如果层数过多,则应考虑是否有些模块设计过于简单,看能否适当合并。宽度是软件结构中同一个层次上的模块总数的最大值,一般说来,宽度越大系统越复杂,对宽度影响最大的因素是模块的扇出。在系统设计时,需要权衡系统的深度和宽度,尽量降低系统的复杂性,减少实施过程的难度,提高开发和维护的效率。需要控制模块接口的复杂性。
  3. 尽力使模块的作用域在其控制域之内。模块控制域:这个模块本身以及所有直接或间接从属于它的模块的集合。模块作用域:指受该模块内一个判定所影响的所有模块的集合。

在模块分解时需要注意:

  1. 保持模块的大小适中
  2. 尽可能减少调用的深度
  3. 直接调用该模块的次数应该尽最多,但使用其他模块的次数不宜过多(扇入大,扇出小)。好的软件设计结构顶层高扇出,中间扇出较少,底层高扇入。
  4. 保证模块是单入口、单出口的
  5. 模块的作用域应该在模块之内
  6. 功能应该是可预测的

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

(1)A.17   B.19   C.20   D.22

(2)A.1   B.2   C.3   D.4

【解析】

关键路径:ABFJL和ADGIJL

项目工期:22天

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

A.应用程序点数量

B.功能点数量

C.复用或生成的代码行数

D.源代码的行数

【解析】

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

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

A.abcd-+*

B.ab-c+d*

C.abc-d*+ 

D.ab-cd+*

【解析】

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

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

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

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

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

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

【解析】

本题4个选项都不太恰当,对于编译型语言,处理过程为:预处理-编译-链接,没有汇编过程,对比来看,预处理、编译、汇编、链接最合适。

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

A.队列

B.优先队列

C.

D.散列表

【解析】

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

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

A.图①和图②都可化简

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

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

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

【解析】

图①当前状态下:

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,那么该逻辑地址经过地址变换后,其物理地址应为()。

页号

物理块号

0

2

1

3

2

5

3

6

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

【解析】

4K = 2^12,所以后12位表示页内地址,其他部分为页号,3C20 的后12位为 C20,3为页号。

根据页面变换表查表得知3号页,对应的是6号块。所以逻辑地址 3C20 的物理地址为 6C20H。

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

(1)

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

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

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

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

(2)  A.517 B.1029 C.65797 D.66053

【解析】

iaddr[0]~iaddr[4] 直接地址索引可表示为 5*1K=5K

一个一级间接地址索引包括:1K/4=1024/4=256 个地址项。iaddr[5] 和 iaddr[6] 可表示大小为 2*256*1K=512K

一个二级间接地址索引包括:256*256=65536 个地址项。iaddr[7] 可表示大小为 65536*1K=65536K

总的大小为 5K+512K+65536K=66053K

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

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

【解析】

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

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

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

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

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

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

【解析】

线程共享的内容包括:进程代码段、进程的公有数据(利用这些共享的数据,线程很容易的实现相互之间的通讯)、进程打开的文件描述符、信号的处理器、进程的当前目录、进程用户与进程组ID。

线程独有的内容包括:线程ID、寄存器组的值、线程的堆栈、错误返回码、线程的信号屏蔽码。

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

(1)  A.对象   B.数据.   C.数据流   D.事件

(2) 

A.以用户需求为动力  

B.支持软件重用

C.具有迭代性  

D.开发活动之间存在明显的界限

【解析】

喷泉模型是一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。该模型认为软件开发过程自下而上周期的各个阶段是相互迭代和无间隙的特性。无间隙指在各项活动之间无明显边界,如分析和设计活动之间没有明显的界限。

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

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

【解析】

内聚类型

描述

功能内聚

完成一个单一功能,各个部分协同工作,缺一不可

顺序内聚

处理元素相关,而且必须顺序执行

通信内聚

所有处理元素集中在一个数据结构的区域上

过程内聚

处理元素相关,而且必须按特定的次序执行

瞬时内聚(时间内聚)

所包含的任务必须在同一时间间隔内执行

逻辑内聚

完成逻辑上相关的一组任务

偶然内聚(巧台内聚)

完成一组没有关系或松散关系的任务

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

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

【解析】

吞吐量:指在给定的时间内,系统所能处理的任务的数量。

响应时间:指系统对请求做出响应的时间。

容量:存储器所能存储的全部信息量称为该存储器的容量。

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

A.设计更好的算法

B. 采用不同的数据结构    

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

D.改写代码使其更紧凑

【解析】

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

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

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

【解析】

  1. 可靠性:指一个系统对于给定时间间隔内、给定条件下无失效运作的概率。可以用 MTTF/(1+MTTF) 来度量,其中 MTTF 为平均无故障时间。
  2. 可用性:在给定时间点上,一个系统能够按照规格说明正确运作的概率。可以用 MTBF/(1+MTBF) 来度量,其中 MTBF 为平均失效间隔时间。
  3. 可维护性:指在给定使用条件下,在规定时间间隔内,使用规定的过程和资源完成维护活动的概率,可以用 1/(1+MTTR) 来度量,其中 MTTR 为平均修复时间。

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

测试用例表

编号

A

B

X

2

0

4

1

1

1

2

1

1

4

0

2

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

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

【解析】

根据测试用例:

用例①可以满足覆盖所有语句,满足语句覆盖。

用例①可以满足路径ace,用例②可以满足路径abd,用例③可以满足路径abe,用例④可以满足路径acd。所以满足路径覆盖需要测试用例①②③④。

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

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

【解析】

this可以区分同名的对象属性和局部变量名。

this 指当前对象,this.属性  就是对象属性。

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

A.确诊病人和治愈病人

B.确诊病人和疑似病人   

C.医生和病人

D.发热病人和确诊病人

【解析】

确诊病人”是一种特殊的“发热病人”。

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

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

【解析】

  1. 共同重用原则:一组接口中应该是共同重用的。如果重用了这组中的一个类,那么就要重用包中的所有的类。相互之间没有紧密联系的类不应该在同一组中。这个原则强调了分类,就具有相同关系或者关联比较紧密的类应该分到一组中,方便修改和客户端的调用。
  2. 共同封闭原则:包中的所有类对于同一种性质的变化应该是共同封闭的。一个变化若对一个封闭的包产生影响,则将对该包中的所有类产生影响,而对于其他包则不造成任何影响。
  3. 开放-封闭原则:对扩展开放,对修改封闭。
  4. 接口隔离原则:使用多个专门的接口比使用单一的总接口要好。

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

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

【解析】

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

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

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

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

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

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

【解析】

A是抽象类,不能直接产生对象。

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

(1) 

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

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

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

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

(2)

【解析】

对象图(Object Diagram)是显示了一组对象和他们之间的关系。使用对象图来说明数据结构,类图中的类或组件等的实例的静态快照,是系统在某个运行时刻的展现。

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

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

序列图:是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。

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

(1)

A.生成器(Builder) 

B.抽象工厂(Abstract Factory)

C.原型(Prototype)

D.工厂方法(Factory Method)

【解析】

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

(2)

45、A.PizzaBuilder

B.SpicyPizaBuilder

C.Waiter

D.Pizza

【解析】

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

(3)

A.创建型对象

B.结构型对象

C.行为型对象

D.结构型类

【解析】

Builder:抽象建造者,为创建一个Product对象各个部件指定抽象接口,把产品的生产过程分解为不同的步骤,从而使具体建造者在具体的建造步骤上具有更多弹性,从而创造出不同表示的产品。

ConcreteBuilder:具体建造者,实现Builder接口,构造和装配产品的各个部件定义并明确它所创建的表示,提供一个返回这个产品的接口。

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

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

(4)

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

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

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

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

【解析】

适用场景(复杂对象构造)

当创建复杂对象的算法应该独立于该对象的组成部分以及它们的装配方式时。

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

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

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

【解析】

根据题干描述的调用过程,hoo()第一个参数是传值调用,第二个参数是引用调用,因此,在hoo()中对a的修改最终会影响到原foo()函数中传递的参数x,也就是最终打印的值。

根据hoo()函数过程,x初始传参为原args=5,此时x=x-1= 4(注意这里的x是局部变量,只在hoo()使用),a初始传参为原x=6,此时a=ax=64=24,最终全局变量x值为24。(注意这里的原x是全局变量,在hoo()参数中可以理解为别名为a,现x是局部变量,也就是之前求取的4)。

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

P:

E→E+T|E-T|T

T→TF|F

F→Flid

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

【解析】

根据本题的语法推导式,可以发现,这里没有终结符“(”、")"、"/"。

在推导的过程中,会发现“”只能通过T推导,此时必定经过了E+T或E-T,也就是说“+”或“-”必定在“”前面。只有A能够被推导,推导过程如下:

(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→-id→单个字母-b;

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

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

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

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

【解析】

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

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

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

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

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

(1) A.属性冲突     B.命名冲突     C.结构冲突    D.实体冲突

【解析】

  1. 属性冲突:同一属性可能会存在于不同的分E-R图,由于设计人员不同或是出发点不同,对属性的类型、取值范围和数据单位等可能会不一致。
  2. 命名冲突:相同意义的属性在不同的分E-R图中有着不同的命名,或是名词相同的属性在不同的分E-R图中代表着不同的意义。
  3. 结构冲突:同一实体在不同的分E-R图中有不同的属性,同一对象在某一分E-R图中被抽象为实体,而在另一分E-R图中又被抽象为属性,需要统一。

本题属于结构冲突,没有实体冲突的说法。

(2)

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

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

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

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

【解析】

本题本身不够严谨。

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

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

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

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

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

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

【解析】

本题根据函数依赖,首先找到入度为0的属性集合A,又根据A→BC,这里根据amstrong 公理中的分解规则,可以得到A→B,A→C,同时存在B→D,此时有传递函数依赖A→D,可以通过A遍历全图。

54、55、关系R、S如下表所示,R⋈S的结果集为 (54),R、s的左外联接、右外联接和完全外联接的元组个数分别为(55)。

(1)

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)}

【解析】

第一空根据自然连接的结果,属性列数是二者之和减去重复属性列,所以结果有4个属性列。元组行满足同名属性列取值相等,同样满足要求。

(2)、A.2,2,4   B.2,2,6    C.4,4,4     D.4,4,6

第二空左外连接、右外连接、完全外连接,在软设中考查较少。

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

A1

A2

A3

A4

1

2

3

NULL

2

1

4

8

3

4

4

4

4

6

7

NULL

右外连接:

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

A1

A2

A3

A4

1

9

NULL

1

2

1

4

8

3

4

4

4

4

8

NULL

3

完全外连接:完成左外连接和右外连接操作,结果如下:

A1

A2

A3

A4

1

2

3

NULL

2

1

4

8

3

4

4

4

4

6

7

NULL

1

9

NULL

1

4

8

NULL

3

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

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

【解析】

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

  1. 数据独立性。在分布式数据库系统中,数据独立性这一特性更加重要,并具有更多的内容。除了数据的逻辑独立性与物理独立性外,还有数据分布独立性(分布透明性)。
  2. 集中与自治共享结合的控制结构。各局部的DBMS可以独立地管理局部数据库,具有自治的功能。同时,系统又设有集中控制机制,协调各局部DBMS的工作,执行全局应用。
  3. 适当增加数据冗余度。在不同的场地存储同一数据的多个副本,这样,可以提高系统的可靠性可用性,同时也能提高系统性能。
  4. 全局的一致性、可串行性和可恢复性。

本题描述的是可用性。

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

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

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

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

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

【解析】

哈夫曼树:

  1. 哈夫曼树中权越大的叶子离根越近。
  2. 具有相同带权结点的哈夫曼树不唯一。
  3. 哈夫曼树的结点的度数为 0或 2,没有度为 1的结点。
  4. 包含 n个叶子结点的哈夫曼树中共有 2n-1 个结点。

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

A.顺序存储

B.链表存储

C.索引存储

D.哈希存储

【解析】

顺序存储:

是用一组地址连续的存储单元依次存储线性表中的数据元素,从而使得逻辑关系相邻的两个元素在物理位置上也相邻。

  1. 优点:可以随机存取表中的元素。
  2. 缺点:插入和删除操作需要移动大量的元素。

在线性表的顺序存储结构中,第i个元素ai的存储位置为:

LOC(ai) = LOC(a1)+(i-1)*L

其中LOC(a1)是表中第一个元素的存储位置,L是表中每个元素所占空间的大小。

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

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

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

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

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

【解析】

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

折半查找(二分查找)

先给数据排序,形成有序表,把待查数据值与查找范围的中间元素值进行比较,会有四种情况出现:

  1. 代查找数值与中间元素值相等,返回中间原始值的索引。
  2. 待查找数值比中间元素值小,则以整个查找范围的前半部分作为新的查找范围,执行 1,直到找到相等的值。
  3. 待查找数值比中间元素值大,则以整个查找范围的后半部分作为新的查找范围,执行 1,直到找到相等的值。
  4. 如果最后找不到相等的值,则返回错误提示信息。

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

①v1 v2 v3 v4 v5

②v1v3 v4 v5 v2

③v1 v3 v2 v4 v5

④v1v2 v4 v5 v3

(1)A.①②③  B.①③④   c.①②④  D.②③④

【解析】

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

(2)A.①②  B.①③  c.②③  D.③④

【解析】

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

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

(1)

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)

(2)

A.O(1)

B.O(Ign)

C.O(n)

D.O(nlgn)

【解析】

快速排序

从待排序列中任取一个元素(例如取第一个)作为中心,所有比它小(或相等)的元素一律放前,所有比它大的元素一律放后,形成左右两个子表;

然后再对各子表重新选择中心元素并按此规则调整,直到每个子表的元素元素只剩一个。此时便为有序序列了。

  1. 优点:因为每趟可以确定不止一个元素的位置,而且呈指数增加,所以特别快!
  2. 前提:顺序存储结构

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

(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,75,6,8)。

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

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

A.n,(n^2)/2

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

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

D.n-1,(n^2)/2 

【解析】

  1. 有向完全图:n 个顶点的有向图有 n(n-1) 条边。
  2. 无向完全图:n 个顶点的无向图有 n(n-1)/2 条边。

本题可以简单画出一个无相通图,比如两个顶点相连接,此时结点n=2,边最少为1,最多也为1。

65根据渐进分析,表达式序列: n⁴,lgn,2ⁿ,1000n,n⅔,n!,从低到高排序为(D)。 

 

【解析】

n⁴在 n>16 时满足 2ⁿ>n⁴,因此排除 C选项,lgn<n,因此排除 B选项。n! 的增长率远大于 2ⁿ 的增长率,因此选择 D。

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

【解析】

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

运行 Windows 系统的计算机无法从 DHCP 服务器中获取动态地址时,它将在 169.254.0.0/16 中随机选取一个自动专用IP地址(APIPA)。

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

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

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

(1)  A. HTTP     B.TCP     C. UDP     D. HTTPS

(2)  A.52     B.25     C.1100     D.110

【解析】

POP3 是基于 TCP 协议的,默认端口是110。

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

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

【解析】

组织模式

含义

地理模式

含义

com

商业组织

cn

中国

edu

教育机构

hk

中国香港

gov

政府机构

mo

中国澳门

mil

军事部门

tw

中国台湾

net

主要网络支持中心

us

美国

org

上述以为组织

uk

英国

int

国际组织

jp

日本

71~75、Regardless of how well designed, constructed, and tested a system or aplication may be,errors or bugs will inevitably occur. Once a system has been ( implemented ), it enters operations and support.Systems support is the ongoing technical support for user, as well as themaintenance required tofix any errors, omissions,or new requirements that may arise. Before an information system can be(supported ) , it must be in operation. System operation is the day-to-day, week-to-week, month-to-month, and year-to-year (execution ) of an information system's business processes and application programs.Unlike systems analysis, design, and implementation, systems support cannot sensibly be ( decomposed) 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 ( triggered ) by a particular problem,event,or opportunity encountered with the implemented system.

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

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

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

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

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

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

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

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

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

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

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

  • 12
    点赞
  • 37
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值