1、计算机执行指令的过程中,需要由( )产生每条指令的操作信号并将信号送往相应的部件进行处理,以完成指定的操作。

A.CPU的控制器

B.CPU的运算器

C.DMA控制器

D.Cache控制器

【解析】

CPU的操作控制功能:一条指令功能的实现需要若干操作信号配合来完成,CPU产生每条指令的操作信号并将其送往对应的部件,控制相应的部件按指令的功能进行操作。

CPU的运算器只能完成运算,而控制器用于控制整个CPU的工作。

  1. 运算器和控制器组成中央处理器(CPU)。
  2. 控制器负责依次访问程序指令,进行指令译码,并协调其他设备,通常由程序计数器(PC)、指令寄存器、指令译码器、状态/条件寄存器、时序发生器、微操作信号发生器组成。
  3. 运算器负责完成算术、逻辑运算功能,通常由 ALU(算术逻辑单元)、寄存器、多路转换器、数据总线组成。

2、DMA控制方式是在( )之间直接建立数据通路进行数据的交换处理。

A.CPU与主存

B.CPU与外设

C.主存与外设

D.外设与外设

【解析】

DMA 控制器是一种在系统内部转移数据的独特外设,可以将其视为一种能够通过一组专用总线将内部和外部存储器与每个具有 DMA 能力的外设连接起来的控制器。

直接主存存取(Direct Memory Access,DMA)是指数据在主存与 I/O 设备间(即主存与外设之间)直接成块传送。

3、CPU访问存储器时,被访问数据一般聚集在一个较小的连续存储区域中。若一个存储单元已被访问,则其邻近的存储单元有可能还要被访问,该特性被称为()。

A.数据局部性

B.指令局部性

C.空间局部性

D.时间局部性

【解析】

程序的局限性表现在时间局部性和空间局部性:

  1. 时间局部性是指如果程序中的某条指令一旦被执行,则不久的将来该指令可能再被执行;例如:重复的引用一个变量时则表现出较好的时间局部性。
  2. 空间局部性是指一旦程序访问了某个存储单元,则在不久的将来,其附近的存储单元也有可能被访问;例如:遍历二维数组时按行序访问数据元素具有较好的空间局部性。

4、某系统由3个部件构成,每个部件的千小时可靠度都为R,该系统的千小时可靠度为 (1-(1-R)²)R ,则该系统的构成方式是( )。

A.3个部件串联

B.3个部件并联

C.前两个部件并联后与第三个部件串联

D.第一个部件与后两个部件并联构成的子系统串联

【解析】

A选项可靠度为RRR;

B选项可靠度为1-(1-R)(1-R)(1-R);

C选项可靠度为(1-(1-R)(1-R))R;

D选项可靠度为R(1-(1-R)(1-R))。

5在( )校验方法中,采用模2运算来构造校验位。

A.水平奇偶

B.垂直奇偶

C.海明码

D.循环冗余

【解析】

采用模二除法运算的只有循环冗余校验 CRC。

6以下关于RISC (精简指令系统计算机)技术的叙述中,错误的是( )。

A.指令长度固定、指令种类尽量少

B.指令功能强大、寻址方式复杂多样

C.增加寄存器数目以减少访存次数

D.用硬布线电路实现指令解码,快速完成指令译码

【解析】

RISC 与 CISC

  1. 为提高操作系统的效率,人们最初选择向指令系统中添加更多更复杂的指令来实现,导致指令集越来越大,这种类型的计算机称为复杂指令集计算机(CISC)
  2. 对指令数目和寻址方式做精简,指令的指令周期相同,采用流水线计算,指令并行执行程序更好,这就是精简指令集计算机(RISC)

7、( )防火墙是内部网和外部网的隔离点,它可对应用层的通信数据流进行监控和过滤。

A.包过滤

B.应用级网关

C.数据库

D .WEB

【解析】

应用级网关可以工作在 OSI 七层模型的任一层上,能够检查进出的数据包,通过网关复制传递数据,防止在受信任服务器和客户机与不受信任的主机间直接建立联系。应用级网关能够理解应用层上的协议,能够做复杂一些的访问控制,起到防火墙的作用,称为应用级网关。

8下述协议中与安全电子邮箱服务无关的是( )。

A.SSL

B.HTTPS

C.MIME

D.PGP

【解析】

MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展协议,是描述消息内容类型的因特网标准。MIME 消息能包含文本、图像、音频、视频以及其他应用程序的专用数据。

SSL和HTTPS涉及到邮件传输过程的安全。

GP(Pretty Good Privacy)优良保密协议,是一套用于信息加密、验证的应用程序,可用于加密电子邮件内容。

9、10、用户A和B要进行安全通信,通信过程需确认双方身份和消息不可否认。A和B通信时可使用( )来对用户的身份进行认证;使用( )确保消息不可否认。

(1)

A.数字证书

B.消息加密

C.用户私钥

D.数字签名

(2)

A.数字证书

B.消息加密

C.用户私钥

D.数字签名

【解析】

  1. 数字证书

数字证书就是互联网通讯中标志通讯各方身份信息的一串数字,是一种在 Internet 上验证通讯实体身份的方式。

作用类似于我们的身份证。它由一个权威机构 CA(证书授权中心)发行的,人们可以在网上用它来识别对方的身份。

数字证书是一个经 CA 数字签名的,包含公开密钥拥有者信息以及公开密钥的文件。

  1. 数字签名

数字签名是指通过一个单向函数对要传送的报文进行处理,得到用以认证报文来源并核实报文是否发生变化的一个字母数字串。它与数据加密技术一起,构建起了安全的商业加密体系。

传统的数据加密是保护数据的最基本方法,它只能够防止第三者获得真实的数据(数据的机密性),而数字签名则可以解决否认、伪造、篡改和冒充的问题(数据的完整性和不可抵赖性)。

数字签名使用的是公钥算法(非对称密钥技术)。

11、震网(Stuxnet)病毒是一种破坏工业基础设施的恶意代码,利用系统漏洞攻击工业控制系统,是一种危害性极大的( )。

A.引导区病毒

B.宏病毒

C.木马病毒

D.蠕虫病毒

【解析】

震网(Stuxnet),指一种蠕虫病毒。它的负责程度远超一般电脑黑客的能力。这种震网(Stuxnet)病毒于2010年6月首次被检测出来,是第一个专门定向攻击真实世界中基础(能源)设施的 “蠕虫”病毒,比如核电站,水坝,国家电网。

引导区病毒破坏的是引导盘、文件目录等。

宏病毒破坏的是OFFICE文件相关。

木马的作用一般强调控制操作。

12、刘某完全利用任职单位的实验材料、实验室和不对外公开的技术资料完成了一项 发明。以下关于该发明的权利归属的叙述中,正确的是( )。

A.无论刘某与单位有无特别约定,该项成果都属于单位

B.原则上应归单位所有,但若单位与刘某对成果的归属有特别约定时遵从约定

C.取决于该发明是否是单位分派给刘某的

D.无论刘某与单位有无特别约定,该项成果都属于刘某

【解析】

这里的B选项描述更为严谨,A选项太过绝对。

13、14、甲公司购买了一工具软件,并使用该工具软件开发了新的名为“恒友”的软件。 甲公司在销售新软件的同时,向客户提供工具软件的复制品,则该行为( )。

甲公司 未对“恒友”软件注册商标就开始推向市场,并获得用户的好评。三个月后,乙公司也推 出名为“恒友”的类似软件,并对之进行了商标注册,则其行为()。

(1)

A.侵犯了著作权

B.不构成侵权行为

C.侵犯了专利权

D.属于不正当竞争

(2)

A.侵犯了著作权

B. 不构成侵权行为

C.侵犯了商标权

D. 属于不正当竞争

【解析】

第一空涉及到向客户提供工具软件的复制品,这里侵犯了工具软件的软著权;

第二空,甲公司没有注册商标,并且没有描述商业秘密相关内容,所以不涉及商标权保护和不正当竞争法保护,而著作权是自作品完成之时就开始保护,所以甲公司当软件产品完成之后,该作品就已经受到著作权保护了,乙公司的行为侵犯了著作权。

15、数据流图建模应遵循( )的原则。

A.自顶向下、从具体到抽象

B.自顶向下、从抽象到具体

C.自底向上、从具体到抽象

D.自底向上、从抽象到具体

【解析】

数据流图是结构化分析的工具,结构化方法就是采用自顶向下逐层分解的思想进行分析建模的。随着分解层次的增加,抽象的级别也越来越低,即越来越接近问题的解。数据流图建模应遵循:自顶向下、从抽象到具体的原则。

16、结构化设计方法中使用结构图来描述构成软件系统的模块以及这些模块之间的调 用关系。结构图的基本成分不包括( )。

A.模块B.调用C.数据D.控制

【解析】

模块结构图是结构化设计中描述系统结构的图形工具,作为一种文档,它必须严格地定义模块的名字、功能和接口,同时还应当在模块结构图上反映出结构化设计的思想。模块结构图由模块、调用、数据、控制和转接5种基本符号组成,如图所示,现说明如下。

17、10个成员组成的开发小组,若任意两人之间都有沟通路径,则一共有( )条沟通路径。

问题1选项

A.100

B.90

C.50

D.45

【解析】

题干中描述任意两人之间都有沟通路径,那么A1与A2、A3、…、A10之间存在9条沟通路径,A2与A1沟通路径已计算,与A3、A4、…、

A10之间有8条沟通路径,依次类推,总的沟通路径数为9+8+7+6+5+4+3+2+1=(9+1)4+5=45条沟通路径。

也可直接利用无主程序员模式沟通路径计算的公式,n(n-1)/2=45。

18某项目的活动持续时间及其依赖关系如下表所示,则完成该项目的最少时间为 ( )天。

问题1选项

A.43

B.45

C.50

D.55

【解析】

试题解析: 根据表格能够画出进度网络图如下所示:

据此分析每个活动的最早开始和最早完成时间如下所示

据此分析每个活动的最早开始和最早完成时间如下所示:

综上,完成该项目的最少时间即项目工期为55天。

19以下不属于软件项目风险的是( )。

A.团队成员可以进行良好沟通

B.团队成员离职

C.团队成员缺乏某方面培训

D.招不到符合项目技术要求的团队成员

20通用的高级程序设计语言一般都会提供描述数据、运算、控制和数据传输的语言成分,其中,控制包括顺序、( )和循环结构。

A.选择

B.递归

C.递推

D.函数

【解析】

程序设计语言的基本成分包括数据、运算、控制和传输等。

程序控制语言的控制成分包括顺序、选择和循环3种结构。

21以编译方式翻译C/C++源程序的过程中,( )阶段的主要任务是对各条语句 的结构进行合法性分析。

A.词法分析

B.语义分析

C.语法分析

D.目标代码生成

【解析】

  1. 词法分析阶段:依据语言的词法规则,对源程序进行逐个字符的扫描,从中识别出一个个 “单词” 符号,主要是针对词汇的检查。
  2. 语法分析阶段:在词法分析的基础上,根据语言的语法规则将单词符号序列分解成各类语法单位,如:“表达式”、“语句”、“程序” 等语法规则就是各类语法单位的构成规则,主要针对结构的检查。
  3. 语义分析阶段:分析各语法结构的含义,检查源程序是否包含语义错误,主要针对句子含义的检查。

22、在对高级语言源程序进行编译或解释处理的过程中,需要不断收集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入( )中。

A.哈希表

B.符号表

C.堆栈

D.队列

【解析】

符号表是一种用于语言翻译器(例如编译器和解释器)中的数据结构。在符号表中,程序源代码中的每个标识符都和它的声明或使用信息绑定在一起,比如其数据类型、作用域以及内存地址。编译程序对高级语言源程序进行编译的过程中,要不断搜集、记录和使用源程序中一些相关符号的类型和特征等信息,并将其存入符号表中。

23、24、在单处理机系统中,采用先来先服务调度算法。系统中有4个进程P1、P2、P3、 P4 (假设进程按此顺序到达),其中P1为运行状态,P2为就绪状态,P3和P4为等待状态,且P3等待打印机,P4等待扫描仪。若P1 ( ),则Pl、P2、P3和P4的状态应分别 为( )。

(1)

A.时间片到

B.释放了扫描仪

C.释放了打印机

D.已完成

(2)

A.等待、就绪、等待和等待

B.运行、就绪、运行和等待

C.就绪、运行、等待和等待

D.就绪、就绪、等待和运行

【解析】

本题部分信息比较隐晦,首先这里采用的是先来先服务调度算法,即按照申请的顺序来安排运行,申请顺序已在题干假设为P1-P2-P3-P4。其次,单个空无法判断结构,那么结合第二空的选项来分析。首先不能2个进程同时运行,因此B选项排除;

再根据原本P1-P2-P3-P4的状态分别是(运行、就绪、等待、等待),因此接下来能够在运行态的,要么是保持运行未改变的P1,否则应该是已经进入就绪态的P2(依据先来先服务的调度原则),由于第二空4个选项中,符合的只有C选项,因此这里应该选择C选项,此时P1-P2-P3-P4的状态分别是(就绪、运行、等待、等待)。

据此再来分析第一空,P1由运行态转变为就绪态,条件应该是时间片到,所以选择A选项

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

A.1200

B.2400

C.4096

D.9600

【解析】

计算机字长为64位,那么利用位示图表示时,每个字能够表示64个物理块的存储情况;

磁盘的容量为1024GB,物理块的大小为4MB,则共有1024GB/4MB = (2561024) 个物理块(注意:单位转换)。

(2561024) 个物理块,每个物理块占用一个字,所以需要 1024*1024/4/64 = 4096 个字。

26、若某文件系统的目录结构如下图所示,假设用户要访问文件book2.doc,且当前工作目录为MyDrivers,则该文件的绝对路径和相对路径分别为( )。

A.MyDrivers\user2\和\user2

B.\MyDrivers\user2\和\user2\

C.\MyDrivers\user2\和user2\

D.MyDrivers\user2\和user2\

【解析】

绝对路径:是从根目录开始的路径,以 “\” 代表根目录。

相对路径:是从当前路径开始的路径。

27、PV操作是操作系统提供的具有特定功能的原语。利用PV操作可以( )。

A.保证系统不发生死锁

B.实现资源的互斥使用

C.提高资源利用率

D.推迟进程使用共享资源的时间

【解析】

PV 操作由 P 操作原语和 V 操作原语组成(原语是不可中断的过程),PV 操作来实现进程的同步和互斥。PV 操作属于进程的低级通信。

28、从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器 平台上,能针对硬件变化进行结构与功能上的配置。该要求体现了嵌入式操作系统的( )。

A.可定制性

B.实时性

C.可靠性

D.易移植性

【解析】

  1. 微型化:从性能和成本角度考虑,希望占用的资源和系统的代码量少。
  2. 可定制:从减少成本和缩短研发周期考虑,要求嵌入式操作系统能运行在不同的微处理器平台上,能针对硬件变化进行结构和功能上的配置,以满足不同应用的需求。
  3. 实时性:嵌入式操作系统主要应用于过程控制、数据采集、传输通信、多媒体信息及关键要害领域需要迅速响应的场合,所以对实时性要求较高。
  4. 可靠性:系统构件、模块和体系结构必须达到应用的可靠性,对关键要害应用还要提供容错和防故障措施。
  5. 易移植性:为了提高系统的易移植性,通常采用硬件抽象层和板级支持包的底层设计技术。

29以下关于系统原型的叙述中,不正确的是( )。

A.可以帮助导出系统需求并验证需求的有效性

B.可以用来探索特殊的软件解决方案

C.可以用来指导代码优化

D.可以用来支持用户界面设计

【解析】

  1. 原型方法适用于用户需求不清、需求经常变化的情况,可以帮助导出系统需求并验证需求的有效性;
  2. 探索型原型的目的是弄清目标的要求,确定所希望的特性,并探讨多种方案的可行性,可以用来探索特殊的软件解决方案;
  3. 原型法能够迅速地开发出一个让用户看得见的系统框架,可以用来支持用户界面设计。

原型法不能用来指导代码优化。

30以下关于极限编程(XP)的最佳实践的叙述中,不正确的是( )。

A.只处理当前的需求,使设计保持简单

B.编写完程序之后编写测试代码

C.可以按日甚至按小时为客户提供可运行的版本

D.系统最终用户代表应该全程配合XP团队

【解析】

极限编程(XP)的12个最佳实践:

  1. 现场客户(On-site Customer):要求至少有一名实际的客户代表在整个项目开发周期在现场负责确定需求、回答团队问题以及编写功能验收测试。
  2. 代码规范(Code Standards):强调通过指定严格的代码规范来进行沟通,尽可能减少不必要的文档。
  3. 每周40小时工作制(40-hour Week):要求项目团队人员每周工作时间不能超过40小时,加班不得连续超过两周,否则反而会影响生产率。
  4. 计划博弈(Planning Game):要求结合项目进展和技术情况,确定下一阶段要开发与发布的系统范围。
  5. 系统隐喻(System Metaphor):通过隐喻来描述系统如何运作、新的功能以何种方式加入到系统。它通常包含了一些可以参照和比较的类和设计模式。XP 不需要事先进行详细的架构设计。
  6. 简单设计(Simple Design):认为代码的设计应该尽可能的简单,只要满足当前功能的要求,不多也不少。
  7. 测试驱动(Test-driven):强调 “测试先行”。在编码开始之前,首先将测试写好,然后再进行编码,直到所有的测试都得以通过。
  8. 代码重构(Refactoring):强调代码重构在其中的作用,认为开发人员应该经常进行重构,通常有两个关键点应该进行重构;对于一个功能实现和实现后。
  9. 成对编程(Pair Programming):认为在项目中采用成对编程比独自编程更加有效。成对编程是由两个开发人员在同一台电脑上共同编写解决同一问题的代码,通常一个人负责写编码,而另一个负责保证代码的正确性和可读性。
  10. 集体代码所有制(Collective Ownership):认为开发小组的每个成员都有更改代码的权利,所有的人对于全部代码负责。
  11. 持续集成(Continuous integration):提倡在一天中集成系统多次,而且随着需求的改变,要不断的进行回归测试。因为,这样可以使得团队保持一个较高的开发速度,同时避免了一次系统集成的噩梦。
  12. 小型发布(Small Release):强调在非常短的周期内以递增的方式发布新版本,从而可以很容易的估计每个迭代周期的进度,便于控制工作量和风险;同时,也可以及时处理用户的反馈。

31在ISO/IEC9126软件质量模型中,软件质景特性( )包含质量子特性安全性。

A.功能性

B.可靠性

C.效率

D.可维护性

【解析】

ISO/IEC9126 软件质量模型是一种评价软件质量的通用模型,包含3个层次:质量特性,质量子特性,度量指标。

质量特性

功能性

可靠性

易用性

效率

维护性

可移植性

质量子特性

适合性

成熟性

易理解性

时间特性

易分析性

适用性

准确性

容错性

易学性

资源利用性

易改变性

易安装性

互操作性

易恢复性

易操作性

稳定性

共存性

保密安全性

吸引性

易测试性

易替换性

依从性

依从性

依从性

依从性

依从性

依从性

32已知模块A给模块B传递数据结构X,则这两个模块的耦合类型为( )。

A.数据耦合

B.公共耦合

C.外部耦合

D.标记耦合

【解析】

  1. 非直接耦合:两个模块之间没有直接关系,他们之间的联系完全是通过主模块的控制和调用来实现的。这种模块的耦合度最低,模块独立性最强。
  2. 数据耦合:指两个模块之间有调用关系,传递的是简单的数据值,相当于高级语言的值传递。
  3. 标记耦合:指两个模块之间传递的是数据结构,如高级语言中的数组名、记录名、文件名等这些名字即标记,其实传递的是这个数据结构的地址。

33Theo Mandel在其关于界面设计所提出的三条“黄金准则”中,不包括( )。

A.用户操纵控制

B.界面美观整洁

C.减轻用户的记忆负担

D.保持界面一致

【解析】

人机交互 “黄金三原则” 包括:置于用户控制之下、减少用户的记忆负担、保持界面的一致性。

34以下关于测试的叙述中,正确的是( )。

A.实际上,可以采用穷举测试来发现软件中的所有错误

B.错误很多的程序段在修改后错误一般会非常少

C.测试可以用来证明软件没有错误

D.白盒测试技术中,路径覆盖法往往能比语句覆盖法发现更多的错误

【解析】

一个高效的测试是指用少量的测试用例,发现被测软件尽可能多的错误。软件测试不能说明软件在不存在错误,不能用穷举法来进行测试。A 选项错误。

经验表明,测试中存在集群规律,即未发现的错误数量与已发现的错误数量成正比,已发现的错误数量越多,则该模块未被发现的错误也就越多。B 选项错误。

软件测试的目的就是在软件投入生产性运行之前,尽可能地发现软件产品(主要是指程序)中的错误和缺陷。C 选项错误。

白盒测试中语句覆盖是覆盖度最弱的,所以路径覆盖往往能比语句覆盖发现更多的错误。D 选项正确。

常见的白盒测试用例设计方法有:

语句覆盖、判定覆盖、条件覆盖、条件判定覆盖、条件组合覆盖、路径覆盖等,发现错误的能力呈由弱至强的变化。

  1. 语句覆盖每条语句至少执行一次。
  2. 判定覆盖每个判定的每个分支至少执行一次。
  3. 条件覆盖每个判定的每个条件应取到各种可能的值。
  4. 条件判定覆盖同时满足判定覆盖和条件覆盖。
  5. 条件组合覆盖每个判定条件中各条件的每一种组合至少出现一次。
  6. 路径覆盖使程序中每一条可能的路径至少执行一次。

35、招聘系统要求求职的人年龄在20岁到60岁之间(含),学历为本科、硕士或者博士,专业为计算机科学与技术、通信工程或者电子工程。其中( )不是好的测试用例。

A.(20,本科,电子工程)

B.(18,本科,通信工程)

C.(18,大专,电子工程)

D.(25,硕士,生物学)

【解析】

在设计测试用例时,一个好的无效等价类,应该只从一个角度违反规则。C 有2个维度的错误,出现错误后,不能直接定位错误的原因。

36系统交付用户使用了一段时间后发现,系统的某个功能响应非常慢。修改了某模块的一个算法使其运行速度得到了提升,则该行为属于( )维护。

A.改正性

B.适应性

C.改善性

D.预防性

【解析】

  1. 完善性维护

是为了扩充功能和改善性能而进行的修改,主要是针对已有的软件系统增加一些在系统分析和设计阶段中没有规定的功能与性能特征。

  1. 预防性维护

为了改进应用软件的可靠性和可维护性,为了适应未来的软硬件环境的变化,应主动增加预防性的新的功能,以使应用系统适应各类变化而不被淘汰。

37一个类中可以拥有多个名称相同而参数表(参数类型或参数个数或参数类型顺序) 不同的方法,称为( )。

A.方法标记

B.方法调用

C.方法重载

D.方法覆盖

【解析】

方法重载是指一个类中定义多个同名的方法,但要求每个方法具有不同的参数的类型或参数的个数。方法重载通常用于创建完成一组任务相似但参数的类型或参数的个数不同的方法。

38采用面向对象方法进行软件开发时,将汽车作为一个系统。以下( )之间不 属于组成(Composition)关系。

A.汽车和座位

B.汽车和车窗

C.汽车和发动机

D.汽车和音乐系统

【解析】

Composition 组成关系,即组合关系,指的是整体与部分的关系,并且整体与部分的生命周期并不相同。

本题A、B、C选项中,将汽车作为一个系统,当汽车报废后,座位、车窗、发动机都可以再次利用,而D选项音乐系统不可以。

39进行面向对象设计时,就一个类而言,应该仅有一个引起它变化的原因,这属于( )设计原则。

A.单一责任

B.开放-封闭

C.接口分离

D.里氏替换

【解析】

面向对象设计(含设计模式)的原则:

  1. 单一职责原则:设计目的单一的类
  2. 开放封闭原则:对扩展开放,对修改封闭
  3. 李氏(Liskov)替换原则:子类可以替换父类接口
  4. 依赖倒置原则:
  5. 接口隔离原则:
  6. 组合重用原则:
  7. 迪米特(Demeter)原则:

40聚合对象是指一个对象( )。

A.只有静态方法

B.只有基本类型的属性

C.包含其它对象

D.只包含基本类型的属性和实例方法

41在UML图中,( )图用于展示所交付系统中软件和硬件之间的物理关系。

A.

B.组件

C.通信

D.部署

【解析】

类图(Class Diagram):展现了一组对象、接口、协作和它们之间的关系。在面向对象系统的建模中,最常见的就是类图,它给出系统的静态设计视图。

组件图(Component Diagram):展现了一组组件之间的组织和依赖。

通信图(Communication Diagram):通信图也是一种交互图,它强调收发消息的对象或参与者的结构组织。

部署图(Deploy Diagram):是用来对面向对象系统的物理方面建模的方法,展现了运行时处理结点以及其中构件(制品)的配置。

42、43、下图所示UML图为( ),用于展示系统中( )。

(1)

A.用例图

B.活动图

C.序列图

D.交互图

(2)

A.—个用例和一个对象的行为

B.一个用例和多个对象的行为

C.多个用例和一个对象的行为

D.多个用例和多个对象的行为

【解析】

顺序图(sequence diagram)

是一种交互图(interaction diagram),交互图展现了一种交互,它由一组对象或角色以及它们之间可能发送的消息构成。交互图专注于系统的动态视图。顺序图是强调消息的时间次序的交互图。

44~46、以下设计模式中,( )模式使多个对象都有机会处理请求,将这些对象连成 一条链,并沿着这条链传递该请求,直到有一个对象处理为止,从而避免请求的发送者和接收者之间的耦合关系;( )模式提供一种方法顺序访问一个聚合对象中的各个元素, 且不需要暴露该对象的内部表示。这两种模式均为( )。

(1)

A.责任链(Chain of Responsibility)

B.解释器(Interpreter)

C.命令(Command)

D.迭代器(Iterator)

(2)

A.责任链(Chain of Responsibility)

B.解释器(Interpreter)

C.命令(Command)

D.迭代器(Iterator)

(3)

A.创建型对象模式

B.结构型对象模式

C.行为型对象模式

D.行为型类模式

【解析】

  1. 责任链模式(Chain of Responsibility)
    1. 使多个对象都有机会处理请求,从而避免请求的发送者和接收者之间的耦合关系。将这些对象连成一条链,并沿着这条链传递该请求,直到有一个对象处理它为止。
    2. 责任链模式包含如下角色:
      1. Handler:抽象处理者
      2. ConcreteHandler:具体处理者
      3. Client:客户类
  2. 迭代器模式(Iterator)
    1. 提供一种方法顺序访问一个聚合对象中各个元素,而又不需要暴露该对象的内部表示。
    2. 怎样遍历一个聚合对象,又不需要了解聚合对象的内部结构,还能提供多种不同的遍历方式,这就是迭代器模式所要解决的问题。
  3. 命令模式(Command)
    1. 将一个请求封装为一个对象,从而可用不同的请求对客户进行参数化,将请求排队或记录请求日志,支持可撤销的操作。
  4. 解释器模式(Interpreter)
    1. 给定一种语言,定义它的文法表示,并定义一个解释器,该解释器用来根据文法表示来解释语言中的句子。

设计模式分为三大类:

  1. 创建型模式主要用于创建对象。共五种:工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。
  2. 结构型模式主要用于处理类或对象的组合。共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、亨元模式。
  3. 行为型模式主要用于描述类或对象怎样交互和怎样分配职责。共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、状态模式、访问者模式、中介者模式、解释器模式。

47观察者(Observer)模式适用于( )。

A.访问一个聚合对象的内容而无须暴露它的内部表示*

B.减少多个对象或类之间的通信复杂性

C.将对象的状态恢复到先前的状态

D.一对多对象依赖关系,当一个对象修改后,依赖它的对象都自动得到通知

【解析】

观察者模式(Observer):定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。

48在以阶段划分的编译器中,( )阶段的主要作用是分析构成程序的字符及由字符按照构造规则构成的符号是否符合程序语言的规定。

A.词法分析

B.语法分析

C.语义分析

D.代码生成

【解析】

词法分析阶段

输入源程序,对构成源程序的字符串进行扫描和分解,识别出一个个单词,删掉无用信息,报告分析时的错误。

一个程序语言的基本语法符号分为五类:关键字、标识符、常量、运算符、界符等。

词法分析器所输出单词符号常常表示成如下的二元式:单词种别,单词符号的属性值。

描述词法规则通常用:正规式 和 有限自动机

49下图所示为一个不确定有限自动机(NFA)的状态转换图,与该NFA等价的DFA 是( )。

【解析】C

本题可以直接以实例方式排除错误选项。本题给出的NFA,能够识别字符串000,010等,以这两个字符串为例进行分析。与之等价的DFA,也必须能够识别这样的串。A选项不能识别000,B选项不能识别010,D选项不能识别010。只有C选项能够同时识别这2个串,因此本题选择C选项。

50、函数f、g的定义如下,执行表达式“y = f(2)”的运算时,函数调用g(la)分别采用引用调用(call by reference)方式和值调用(call by value)方式,则该表达式求值结束后 y的值分别为( )。

A.9、 6

B.20、6

C.20、9

D.30、9

【解析】

执行y=f(2),即传参x=2至f(x)。

首先la=x+1=2+1=3。

(1)g(la)采用引用调用时,在g(la)函数中,将x记为x’以区分函数,x’=x’x’+1=lala+1=10,由于是引用调用,会影响形参la的取值,此时la=10,接下来计算lax=10*2=20。

(2)g(la)采用值调用,在g(la)函数中,将x记为x’以区分函数,x’=x’x’+1=lala+1=10,由于是值调用,不会影响形参la的取值,此时la仍然为3,接下来计算lax=3*2=6。

综上,本题选择B选项。

51、给定关系R(A,B,C,D,E)和关系S(A,C,E,F,G),对其进行自然连接运算R S后其结果集的属性列为( )。

A.R.A,R.C,R.E,S.A,S.C,S.E

B.R.A,R.B,R.C,R.D,R.E,S.F,S.G

C.R.A,R.B,R. C,R.D,R.E,S.A,S.C,S.E

D.R.A,R.B,R. C,R.D,R.E,S.A,S.C,S.E,S.F,S.G

【解析】

自然连接(Natural join)

自然连接是一种特殊的等值连接

  1. 两个关系中进行比较的分量必须是相同的属性组
  2. 在结果中把重复的属性列去掉

自然连接的含义:

R和S具有相同的属性组B

自然连接的结果以左侧R为主,右侧关系S去除重复列。因此最终结果为R的5个属性列,以及S的非重复列。

52、53、假设关系R<U,U={A1,A2,A3,A4},F={A1A3→A2,A1A2→A3,A2→A4}那么在关系R中( ),和候选关键字中必定含有属性( )。

(1)

A.有1个候选关键字A2A3

B.有1个候选关键字A2A4

C.有2个候选关键字A1A2和A1A3

D.有2个候选关键字A1A2和A2A3

(2)

A.A1,其中A1A2A3主属性,A4为非主属性

B.A2,其中A2A3A4主属性,A1为非主属性

C.A2A3,其中A2A3为主属性,A1A4為为非主属性

D.A2A4,其中A2A4为主属性,A1A3为非主属性

【解析】

首先判断候选码,先找入度为0的结点,本题中A1没有在函数依赖右侧出现,因此体现在图示中,即入度为0,候选码必定包含属性A1。根据项,只有C选项符合。

第二空,候选码必定包含A1,并且根据候选码为A1A2、A1A3,可以得出主属性有A1A2A3,非主属性有A4。

54要将部门表Dept中name列的修改权限赋予用户Ming,并允许Ming将该权限授予他人。实现该要求的SQL语句如下:GRANT UPDATE(name) ON TABLE Dept TO Ming ( )。

A.FOR ALL

B.CASCADE

C.WITH GRANT OPTION

D.WITH CHECK OPTION

【解析】

授权命令 GRANT 语法格式:

GRANT <权限> ON 表名[(列名)] TO 用户 [WITH GRANT OPTION]

WITH GRANT OPTION 这个选项表示该用户可以将自己拥有的权限授权给别人。

55若事务T1对数据D1加了共享锁,事务T2T3分别对数据D2和数据D3加了排它锁, 则事务( )。

A.T1对数据D2D3加排它锁都成功,T2T3对数据D1加共享锁成功

B.T1对数据D2D3加排它锁都失败,T2T3对数据D1加排它锁成功

C.T1对数据D2D3加共享锁都成功,T2T3对数据D1加共享锁成功

D.T1对数据D2D3加共享锁都失败,T2T3对数据D1加共享锁成功

【解析】

排他型封锁(X封锁)

如果事务T对数据A(可以是数据项、记录、数据集已至整个数据库)实现X封锁,那么只允许事务T读取和修改数据A,其他事务要等事务T解除X封锁以后,才能对数据A实现任何类型的封锁。可见X封锁只允许一个事务独锁某个数据,具有排他性。

共享型封锁(S封锁)

S封锁允许并发读,但不允许修改,也就是说,如果事务T对数据A实现了S封锁,那么允许事务T读取数据A,但不能修改数据A,在所有S封锁解封之前不允许任何事务对数据A实现X封锁,其他事务只能再对数据A实现S封锁。

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

A.共享性

B.自治性

C.可用性

D.分布性

【解析】

分布性:数据存储在多个不同节点上。

逻辑相关性:数据库系统内的数据在逻辑上具有相互关联的特性。

场地透明性:使用分布式数据库中的数据时不需要指明数据所在的位置。

场地自治性:每个单独的节点能够执行局部的应用请求。

57某n阶的三对角矩阵A如下图所示,按行将元素存储在一维数组M中,设a1,1存储在M[1],那么ai,j (1<=i,j<=n且ai,j位于三条对角线中)存储在M( )。

A.i+2j

B.2i+j

C.i+2j-2

D.2i+j-2

【解析】

这类题型可以直接用实例来排除错误选项。a11存在M[1],将i=1,j=1带入选项,A、B不正确。然后根据题干描述按行存储,下一个元素应该是a12,存放在M[2]中,将i=1,j=2带入选项,只有D选项符合题意。

58具有3个结点的二叉树有5种,可推测出具有4个结点的二叉树有( )种。

A.10

B.11

C.14

D.15

【解析】

含n个节点的二叉树有f(n)种形态:(注:n!表示n的阶乘。如 4! = 4*3*2*1 = 24)

59、双端队列是指在队列的两个端口都可以加入和删除元素,如下图所示。现在要求元素进队列和出队列必须在同一端口,即从A端进队的元素必须从A端出、从B端进队 的元素必须从B端出,则对于4个元素的序列a、b、c、d,若要求前2个元素(a、b)从 A端口按次序全部进入队列,后两个元素(c、d)从B端口按次序全部进入队列,则不可能得到的出队序列是( )。

A.d、a、b、c

B.d、c、b、a

C.b、a、d、c

D.b、d、c、a

【解析】

从A端进入的元素必须从A端出、从B端进入的元素必须从B端出;则出队顺序中b在a前面,d在c前面。

60设散列函数为 H(key)=key%11,对于关键碍序列(23,40, 91, 17, 19, 10, 31, 65, 26), 用线件探杳法解决冲突构造的哈希表为( )。

【解析】B

将元素的值按散列函数进行哈希计算得到哈希地址,再将元素值存储到该地址。如果该地址已有元素,称之为存在 “冲突”,当冲突后,将计算得到的哈希地址+1,再判断该地址是否有元素,如果没有则存入该地址。这种冲突处理方式称为 “线性探查法”。

此题,10%11 余数为10,所以存储在10格内。而65%11余数也是10,但10格内存储了数据,所以+1,即存储到0格内。

61、对于有序表 (8, 15, 19, 23, 26, 31, 40, 65, 91) ,用二分法进行查找时,可能的关键字比较顺序为()。

A.26,23,19

B.26,8,19

C.26,40,65

D.26,31,40

【解析】

按下面的规则,每1次和26比较,如果查找数小于26,则第2次和15比较。如果查找数大于26,则第2次和40比较。所以选C。

折半查找(二分查找)

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

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

62~65、已知矩阵Amn和Bnp相乘的时间复杂度为O(mnp)。矩阵相乘满足结合律,如三个矩阵A、B、C相乘的顺序可以是(AB)C也可以是A(BC)。不同的相乘顺序所需进行的乘法次数可能有很大的差别。因此确定n个矩阵相乘的最优计算顺序是一个非常重要的问题。已知确定n个矩阵A,A2…An相乘的计算顺序具有最优子结构,即A1A2…An的最优计算顺序包含其子问题A1A2…Ak和Ak+1Ak+2……An (l<=k<n)的最优计算顺序。

可以列出其递归式为:

其中,Ai的维度为pi-1pi m[i,j]表示AiAi+1……Aj最优计算顺序的相乘次数。

先采用自底向上的方法求n个矩阵相乘的最优计算顺序。则求解该问题的算法设计策略为( )。算法的时间复杂度为( ),空间复杂度为( )。

给定一个实例,(POPi……P5)=(20,15,4,10,20,25),最优计算顺序为( )。

(1)

A.分治法

B.动态规划法

C.贪心法

D.回溯法

(2)

A.O(n²)

B.O(n²lgn)

C.O(n³)

D.O(2n)

(3)

A.O(n²)

B.O(n²lgn)

C.O(n³)

D.O(2n)

(4)

A.(((A1A2)A3)A4)A5

B.A1(A2(A3(A4A5)))

C.((A1A2)A3) (A4A5)

D.(A1A2) ( (A3A4)*A5)

66浏览器开启了无痕浏览模式后,( )依然会被保存下来。

A.浏览历史

B.搜索历史

C.下载文件

D.临时文件

【解析】

启用无痕浏览模式,下载文件仍然会被保留。

67、下面是HTTP的一次请求过程,正确的顺序是( )。

浏览器向DNS服务器发出域名解析请求并获得结果

在浏览器中输入URL,并按下回车键

服务器将网页数据发送给浏览器

根据目的IP地址和端口号,与服务器建立TCP连接

浏览器向服务器发送数据请求

浏览器解析收到的数据并显示

通信完成,断开TCP连接

A.②①④⑤③⑦⑥

B.②①⑤④③⑦⑥

C.②①④⑤③⑥⑦

D.②①④③⑤⑦⑥

【解析】

短连接:客户端和服务端每进行一次 HTTP 操作,就建立一次连接,任务结束就中断连接。

长连接:当一个网页打开完成后,客户端和服务器之间用于传输 HTTP 数据的 TCP 连接不会关闭,客户端再次访问这个服务器时,会继续使用这一条已经建立的连接。

68TCP和UDP协议均提供了 ( )能力。

A.连接管理

B.差错校验和重传

C.流量控制

D.端口寻址

【解析】

TCP和UDP均提供了端口寻址功能。

UDP是一种不可靠的、无连接的协议,没有连接管理能力,不负责重新发送丢失或出错的数据消息,也没有流量控制的功能。

69在Windows命令行窗口中使用( )命令可以查看本机DHCP服务是否己启用。

A.ipconfig

B.ipconfig /all

C.ipconfig /renew

D.ipconfig /release

【解析】

ipconfig 显示信息

ipconfig /all 显示详细信息,可查看DHCP服务是否已启用

ipconfig /renew 更新所有适配器

ipconfig /release 释放所有匹配的连接

70下列无线网络技术中,覆盖范围最小的是( )。

A.802.15.1 蓝牙

B.802.11n 无线局域网

C.802.15.4 ZigBee

D.802.16m 无线城域网

【解析】

ZigBee,也称紫蜂,是一种低速短距离传输的无线网上协议,常见对讲机使用。

71~75A project is a [temporary] ( ) of unique, complex, and connected activities having one goal or purpose and that must be completed by a specific time,within budget, and according to ( ).

Project management is the process of scoping, planning, staffing,organizing, directing, and controlling the development of a(n) ( ) system at a minimum cost within a specified time frame.

For any systems development project, effective project management is necessary to ensure that the project meets the ( ) , is developed within an acceptable budget, and fulfills customer expectations and specifications. Project management is a process that starts at the beginning of a project, extends through a project, and doesn’t culminate until the project is completed.

The prerequisite for good project management is a well-defined system development process. Process management is an ongoing activity that documents,manages the use of, and improves an organization’s chosen methodology (the “process”)for system development. Process management is concerned with the activities, deliverables, and quality standards to be applied to ( ) project(s).

(1)

A.task

B.work

C.sequence

D.activity

(2)

A.specifications

B.rules

C.estimates

D.designs

(3)

A.perfect

B.acceptable

C.controlled

D.completed

(4)

A.deadline

B.specification

C.expectation

D.requirement

(5)

A.a single

B.a particular

C.some

D.all