中级软件设计师2017上半年上午试题

中级软件设计师2017上半年上午试题

 

单项选择题

1CPU执行算术运算或者逻辑运算时,常将源操作数和结果暂存在( B )中。

  A.  程序计数器 (PC)   B.  累加器 (AC) 

  C.  指令寄存器 (IR)   D.  地址寄存器 (AR)

【解析】本题考查计算机组成原理中的CPU构成。

答案应该是累加寄存器,用来暂时存放算术逻辑运算部件ALU运算的结果信息。

程序计数器(PC)是存放执行指令的地方,计算之前就要用到。

指令寄存器(IR)保存当前正在执行的一条指令。

地址寄存器(AR)用来保存当前CPU所要访同的内存単元的地址。

2、要判断宇长为 16 位的整数 a 的低四位是否全为 0,则( A

  A. a 0x000F进行"逻辑与"运算,然后判断运算结果是否等于0 

  B. a 0x000F进行"逻辑或"运算,然后判断运算结果是否等于F 

  C. a 0x000F进行"逻辑异或"运算,然后判断运算结果是否等于0 

  D. a 0x000F进行"逻辑与"运算,然后判断运算结果是否等于F

【解析】本题考查计算机组成原理中数据运算基础知识。

在逻辑运算中,设AB为两个逻辑变量,当且仅当AB的取值都为“真” 时,AB的值为“真”;否则AB的值为“假”。当且仅当AB的取值都 为“假”时,AB的值为“假”;否则AB的值为“真”。当且仅当AB的值不同时,A异或B为“真”,否则A异或B为“假”。对于16位二进制整数a, 其与0000000000001111(即十六进制数000F)进行逻辑与运算后,结果的高12位都为0,低4位则保留a的低4位,因此,当a的低4位全为0时,上述逻辑与运算的结果等于0

3、计算机系统中常用的输入/输出控制方式有无条件传送、中断、程序查询和 DMA方式等。当采用( D )方式时,不需要 CPU 执行程序指令来传送数据。

  A.  中断   B.  程序查询   C.  无条件传送   D.  DMA

【解析】本题考查DMA方式的特点。在计算机中,实现计算机与外部设备之间数据交换经常使用的方式有无条件传送、程序查询、中断和直接存储器存取(DMA)。其中前三种都是通过CPU执行某一段程序,实现计算机内存与外设间的数据交换。只有DMA方式下,CPU交出计算机系统总线的控制权,不参与内存与外设间的数据交换。而DMA方式工作时,是在DMA控制硬件的控制下,实现内存与外设间数据的直接传送,并不需要CPU参与工作。由于DMA方式是在DMA控制器硬件的控制下实现数据的传送,不需要CPU执行程序,故这种方式传送的速度最快。

4、某系统由下图所示的冗余部件构成。若每个部件的千小时可靠度都为 R ,则该系 统的千小时可靠度为( B )。

A. (1-R3)(1-R2)    B. (1-(1-R)3)(1-(1-R)2)

  C. (1-R3)+(1-R2)   D. (1-(1-R)3)+(1-(1-R)2)

【解析】本题考查系统可靠度的概念。

串联部件的可靠度=各部件的可靠度的乘积。

并联部件的可靠度=1-部件失效率的乘积。

题目中给出的系统是“先并后串”。

此时先求出三个R并联可靠度为:1-(1-R)3

然后求出两个R并联可靠度为:1-(1-R)2

最终整个系统的可靠度是两者之积:(1-(1-R)3)*(1-(1-R)2)

 

5、己知数据信息为 16 位,最少应附加( C )位校验位,才能实现海明码纠错。

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

【解析】本题考查组成原理中的海明校验码。

只要是海明码按合法的方式编码,就能纠错。所以,本题实际上就是求海明码中校验位的长度。海明码中所需要的校验码位数,有这样的规定的:假设用N表示添加了校验码位后整个信息的二进制位数,用K代表其中有效信息位数,r表示添加的校验码位,它们之间的关系应满足:2r>=K+r+1=N

本题中K=16,则要求2r>=16+r+1,根据计算可以得知r的最小值为5

6、以下关于Cache (高速缓冲存储器)的叙述中,不正确的是( A 

  A. Cache 的设置扩大了主存的容量 

  B. Cache 的内容是主存部分内容的拷贝 

  C. Cache 的命中率并不随其容量增大线性地提高 

  D. Cache 位于主存与 CPU 之间

【解析】本题考查计算机组成原理中的高速缓存基础知识。高速缓存Cache有如下特点:它位于CPU和主存之间,由硬件实现;容景小,一般在几KB到几MB之间;速度一般比主存快510倍,由快速半导体存储器制成;其内容是主存内容的副本(所以Cache无法扩大主存的容量),对程序员来说是透明的;Cache既可存放程序可存放数据。

Cache存储器用来存放主存的部分拷贝(副本)。控制部分的功能是:判断CPU要访问的信息是否在Cache存储器中,若在即为命中,若不在则没有命中。命中时直接对Cache存储器寻址。未命中时,若是读取操作,则从主存中读取数据,并按照确定的替换原则把该数据写入Cache存储器中:若是写入操作,则将数据写入主存即可。

7HTTPS 使用( B )协议对报文进行封装

  A.SSH      B.SSL      C.SHA-1      D.SET

【解析】HTTPS以保密为目标研发,简单讲是HTTP的安全版。其安全基础是SSL协议,全称 Hypertext Transfer Protocol over Secure Socket Layer。它是一个URI scheme,句法类同http:体系。它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTPTCP之间)。这个协议的最初研发由网景公司进行,提供了身份验证与加密通讯方法,现在它被广泛用于互联网上安全敏感的通讯,例如交易支付方面。SSL极难窃听,对中间人攻击提供一定的合理保护。严格学术表述HTTPS是两个协议的结合,即传输层SSL+应用层HTTP

8、以下加密算法中适合对大量的明文消息进行加密传输的是( D  

  A.RSA         B.SHA-1        C.MD5         D.RC5

【解析】本题考查的是信息安全中的加密算法。其中:RSA是非对称加密算法;SHA-1MD5属于信息摘要算法;RC-5厲于非对称加密算法。这些算法中SHA-1MD5是不能用来加密数据的,而RSA由于效率问题,一般不直接用于大量的明文加密,适合明文加密的,也就只有RC-5了。

9、假定用户AB 分别在I1I2两个CA处取得了各自的证书,下面(D)是 AB 互信的必要条件。

  A.AB互换私钥       B.AB互换公钥      C.I1I2互换私钥         D.I1I2互换公钥

【解析】本题考查的是信息安全中的CA认证。题目难度较高,但用排除法来分析不难得出结论。首先,在公钥体系中,交换私钥是无论什么情况下都绝对不允许发生的情况,所以AC选项必然错误。余下的BDB选项的做法没意义,要AB互信,其信任基础是建立在CA之上的,如果仅交换AB的公钥并不能解决信任的问题。而I1I2的公钥交换倒是可以做到互信,因为I1I2的公钥正是验证CA签名的依据。所以本题应选D

10、甲软件公司受乙企业委托安排公司软件设计师开发了信息系统管理软件,由于在委托开发合同中未对软件著作权归属作出明确的约定,所以该信息系统管理软件的著作权由( A )享有。

 A.       B.       C.甲与乙共同      D.软件设计师

【解析】其实这个案例涉及委托开发的著作权归问题:乙企业委甲公司开发软件。根据《著作权法》第17条的规定,著作权归由委托人和受托人通过合同约定。合中未作明确约定的,著作权属于受托人。那么该案例中,软件著作权归没有明确约定,所以著作权归受托人甲。

11、根据我国商标法,下列商品中必须使用注册商标的是( D )。

  A.  医疗仪器   B.  墙壁涂料   C.  无糖食品   D.  烟草制品

【解析】目前根据我国法律法规的规定必须使用注册商标的是烟草类商品。《烟草专卖法》(1991629日通过,199211日施行)第二十条规定:“卷烟、雪茄烟和有包装的烟丝必须申请商标注册,未经核准注册的,不得生产、销售。禁止生产、销售假冒他人注册商标的烟草制品。”《烟草专卖法实施条例》(199773日施行)第二十四条规定:“卷烟、雪茄烟和有包装的烟丝,应当使用注册商标;申请注册商标,应当持国务院烟草专卖行政主管部门的批准生产文件,依法申请注册。”

12、甲、乙两人在同一天就同样的发明创造提交了专利申请,专利局将分别向各申请人通报有关情况,并提出多种可能采用的解决办法。下列说法中,不可能采用( D )

  A. 甲、乙作为共同申请人 

  B. 甲或乙一方放弃权利并从另一方得到适当的补偿 

  C. 甲、乙都不授予专利权 

  D. 甲、乙都授予专利权

【解析】根据“同一的发明创造只能被授予一项专利”的规定,在同一天,两个不同的人就同样的发明创造申请专利的,专利局将分别向各申请人通报有关情况,请他们自己去协商解决这一问题,解决的方法一般有两种,一种是两申请人作为一件申请的共同申请人;另一种是其中一方放弃权利并从另一方得到适当的补偿。都授予专利权是不存在的,所以答案是D

13、数字语音的采样频率定义为 8kHz,这是因为( A )

  A.  语音信号定义的频率最高值为4kHz   B.  语音信号定义的频率最高值为8kHz 

  C.  数字语音转输线路的带宽只有8kHz   D.  一般声卡的采样频率最高为每秒8k

【解析】取样:每隔一定时间间隔,取模拟信号的当前值作为样本,该样本代表了模拟信在某一时刻的瞬间值。经过一系列的取样,取得连续的样本可以用来代替模拟信号在某一间随时间变化的值。那么究竞以什么样频率取样,就可以从取样脉冲信号中无失真地恢复出原来的信号?尼奎斯特取样定理:如果取样速率大于模拟信号最高频率的2倍,则可以用得到的样本中恢复原来的模拟信号。

14、使用图像扫描仪以300DPI的分辨率扫描一幅3×4英寸的图片,可以得到( D )像素的数字图像。

  A. 300×300     B. 300×400      C. 900×4      D. 900×1200

【解析】(300*3)*(300*4)=900*1200

15、在采用结构化开发方法进行软件开发时,设计阶段接口设计主要依据需求分析阶段的( )。接口设计的任务主要是( A )

  A. 数据流图   B. E-R   C. 状态-迁移图   D. 加工规格说明

16、在采用结构化开发方法进行软件开发时,设计阶段接口设计主要依据需求分析阶段的( )。接口设计的任务主要是( C )

  A. 定义软件的主要结构元素及其之间的关系 

  B. 确定软件涉及的文件系统的结构及数据库的表结构 

  C. 描述软件与外部环境之间的交互关系,软件内模块之间的调用关系 

  D. 确定软件各个模块内部的算法和数据结构

【解析】软件设计必须依据对软件的需求来进行,结构化分析的结果为结构化设计提供了最基本的输入信息。从分析到设计往往经历以下流程:

(1)研究、分析和审查数据流图。根据穿越系统边界的信息流初步确定系统与外部接口。

(2)根据数据流图决定问题的类型。数据处理问题通常有两种类型:变换型和事务型。针对两种不同的类型分别进行分析处理。

(3)由数据流图推导出系统的初始结构图。

(4)利用一些启发式原则来改进系统的初始结构图,直到得到符合要求的结构图为止。

(5)根据分析模型中的实体关系图和数据字典进行数据设计,包括数据库设计或数据文件的设计。

(6)在设计的基础上,依旧分析模型中的加工规格说明、状态转换图进行过程设计。

所以接口设计的主要依据是数据流图,接口设计的任务主要是描述软件与外部环境之间的交互关系,软件内模块之间的调用关系。

某软件项目的活动图如下图所示,其中顶点表示项目里程碑,连接顶点的边表示包含的活动,边上的数字表示活动的持续时间(),则完成该项目的最少时间为( 17 )天。活动BDHK最早可以从第( 18 )天开始。(活动ABAEAC最早从第1天开始)

17A.17      B.18       C.19      D.20

18A.310   B.411    C.39    D.410

【解析】由于在一个项目中时间最长的活动序列,决定着项目最短工期。而时间最长的是AEGHKL,需要时间20,所以答案是D

BD活动在AB活动结束之后便可以开始,所以最早开始时间为3HK活动需要在AEGHACFH两条路径上的活动均完成之后,才能开始,所以最早开始时间为10

19、在进行软件开发时,采用无主程序员的开发小组,成员之间相互平等;而主程序员负责制的开发小组,由一个主程序员和若干成员组成,成员之间没有沟通。在一个由8名开发人员构成的小组中,无主程序员组和主程序员组的沟通路径分别是( D )

  A.328      B.327      C.288     D.287

【解析】无主程序员组进行沟通时,需要两两沟通,所以沟通路径数为:7*8/2=28

有主程序员组,有问题可以与主程序员沟通,由主程序员负责协调,所以除主程序员自己,其他7人,每人与主程序员建立一条沟通路径,一共7条沟通路径。

20、在高级语言源程序中,常需要用户定义的标识符为程序中的对象命名,常见的命名对象有( B )

①关键字(或保留字)  ②变量  ③函数  ④数据类型  ⑤注释

  A.①②③      B.②③④       C.①③⑤      D.②④⑤

21、在仅由字符ab构成的所有字符串中,其中以b结尾的字符串集合可用正规式表示为( D )

  A.(b|ab)*b       B.(ab*)*b      C.a*b*b      D.(a|b)*b

【解析】正规式(a|b)*对应的正规集为{ɛ,a,b,aa,ab,...,所有由ab组成的字符串,结尾为b

22、在以阶段划分的编译过程中,判断程序语句的形式是否正确属于( B ) 阶段的工作。

  A.  词法分析   B.  语法分析   C.  语义分析   D.  代码生成

【解析】检查单个词是否正确,属于词法阶段的工作。而识别判断程序语句形式是否正确属于语法分析的工作   

23、某文件管理系统在磁盘上建立了位示图(bitmap) ,记录磁盘的使用情况。若计算机 系统的字长为 32 位,磁盘的容量为 300GB ,物理块的大小为4MB ,那么位示图的大小需要(B  )个字。

  A. 1200     B. 2400     C. 6400     D. 9600

【解析】由于磁盘容量为300GB,物理块大小4MB,所以共有300*1024/4=75*1024块物理块,位示图用每1位表示1个磁盘块的使用情况,1个字是32位,所以1个字可以表示32块物理块使用情况,那么需要75*1024/32=2400个字表示使用情况。

24、某系统中有3个并发进程竞争资源R,每个进程都需要5R,那么至少有( B )R,才能保证系统不会发生死锁。

  A.  12   B.  13   C.  14   D.  15

【解析】由于磁盘容量为300GB,物理块大小4MB,所以共有300*1024/4=75*1024块物理块,位示图用每1位表示1个磁盘块的使用情况,1个字是32位,所以1个字可以表示32块物理块使用情况,那么需要75*1024/32=2400个字表示使用情况。

25、某计算机系统页面大小为4K ,进程的页面变换表如下所示。若进程的逻辑地址为2D16H。该地址经过变换后,其物理地址应为( C )

 

 

A.2048H      B.4096H      C.4D16H      D.6D16H

【解析】页面大小为4K,说明页内地址有12位,所以16进制数中的D16H是页内地址,逻辑页号则为2。查表可知物理块号为4,所以物理地址为4D16H

进程P1P2 P3P4 P5的前趋图如下所示:

 

若用PV操作控制进程P1P2P3P4P5并发执行的过程,需要设置5个信号量S1S2S3S4S5,且信号量S1~S5的初值都等于零。如下的进程执行图中ab处应分别填写( 26  B ;cd处应分别填写( 27  C ) ;ef处应分别填写( 28  A )

 

26A.  V(S1)P(S2)V(S3)   B.  P(S1)V(S2)V(S3) 

    C.  V(S1)V(S2)V(S3)   D.  P(S1)P(S2)V(S3)

27A.P(S2)P(S4)    B.V(S2)P(S4)     C.P(S2)V(S4)    D.V(S2)V(S4)

28A.P(S4)V(S5)    B.V(S5)P(S4)     C.V(S4)P(S5)    D.V(S4)V(S5)

29、以下关于螺旋模型的叙述中,不正确的是( D )

  A. 它是风险驱动的,要求开发人员必须具有丰富的风险评估知识和经验 

  B. 它可以降低过多测试或测试不足带来的风险 

  C. 它包含维护周期,因此维护和开发之间没有本质区别 

  D. 它不适用于大型软件开发

【解析】螺旋模型是一种演化软件开发过程模型,它兼顾了快速原型的迭代的特征以及瀑模型的系统化与严格监控。螺旋模型最大的特点在于引入了其他模型不具备的风险分析,使软件在无法排除重大风险时有机会停止,以减小损失。同时,在每个迭代阶段构建原型是螺旋模型用以减小风险的途径。螺旋模型更适合大型的昂贵的系统级的软件应用。

30、以下关于极限编程(XP) 中结对编程的叙述中,不正确的是( D )

  A. 支持共同代码拥有和共同对系统负责    B. 承担了非正式的代码审查过程 

  C. 代码质量更高                        D. 编码速度更快

【解析】极限编程是一个轻级的、灵巧的软件开发方法;时它也是一个非常严谨和周密的方法。它的基础和价值观是交流、朴素、反馈和气;即,任何一个软件项目都可以从四个方面入手进行改善:加强交流从简单做起;寻求反馈;于实事求是。XP是一种近螺旋式的开发方法,它将复杂的开发过程分解为一个个相对比较简的小周期;通过积极的交流、反馈以及其它一系列的方法,开发人员和客户可以非常清楚开发进度、变化、待解决的问题和潜在的困难等,并根据实际情况及时地调整开发过程。XP就提倡结对编程(PairProgramming),而且代码所有权是归于整个开发队伍。其中的结对编程就是一种对代码的査过程,XP主要解决代码质暈低的问题,编码速度不能改变。

31、以下关于C/S (客户机/服务器)体系结构的优点的叙述中,不正确的是( D )。

  A. 允许合理地划分三层的功能,使之在逻辑上保持相对独立性 

  B. 允许各层灵活地选用平台和软件 

  C. 各层可以选择不同的开发语言进行并行开发 

  D. 系统安装、修改和维护均只在服务器端进行

【解析】C/S体系结构的应用很多,比如我们的QQ,这是需要在本地安装应用程序的。

32、在设计软件的模块结构时, ( D )不能改进设计质量。

  A.尽量减少高扇出结构           B.尽量减少高扇入结构 

  C.将具有相似功能的模块合并     D.完善模块的功能

【解析】在结构化设计中,系统由多个逻辑上相对独立的模块组成,在模块划分时需要遵循如下原则:(1)模块的大小要适中。

(2)模块的扇入和扇出要合理。

(3)深度和宽度适当。

模块ABC有相同的程序块,块内的语句之间没有任何联系,现把改程序块取出来,形成新的模块D,则模块D的内聚类型为( 33 A )内聚。以下关于该内聚类型的叙述中,不正确的是( 34 D )

33A.  巧合   B.  逻辑   C.  时间   D.  过程

34A.  具有最低的内聚性   B.  不易修改和维护 

    C.  不易理解           D.  不影响模块间的耦合关系

 

对下图所示的程序流程图进行语句覆盖测试和路劲覆盖测试,至少需要( 35 B )个测试用例。采用McCabe 度量法计算其环路复杂度为( 36 D )

35A.23      B.24      C.25      D.26

36A.1         B.2         C.3          D.4

【解析】要满足语句覆盖的要求,只需要覆盖两条路径就能达到,所以语句覆盖2个用例即可。路径覆盖需要把程序中的3条路径均覆盖一遍,需要3个用例。

整个程序流程图转化为结点图之后,一共11个结点,13条边,根据环路复杂度公式有:13-11+2=4

在面向对象方法中,两个及以上的类作为一个类的超类时,称为( 37 A),使用它可能造成子类中存在( 38 D )的成员。

37A.  多重继承   B.  多态   C.  封装   D.  层次继承

38A.  动态       B.  私有   C.  公共   D.  二义性

【解析】多重继承是指一个类有多个父类,正是题目所述的情况。多重继承可能造成混淆的情况,出现二义性的成员。

39、采用面向对象方法进行软件开发,在分析阶段,架构师主要关注系统的( D )

  A.  技术   B.  部署   C.  实现   D.  行为

【解析】采用面向对象方法进行软件开发,分析阶段,架构师主要关注系统的行为,即系统应该做什么。 

40、在面向对象方法中,多态指的是( A )

  A. 客户类无需知道所调用方法的特定子类的实现 

  B. 对象动态地修改类 

  C. 一个对象对应多张数据库表 

  D. 子类只能够覆盖父类中非抽象的方法

【解析】多态:冋一操作作用于不的对象,可以有不的解释,产生不的执行结果。在运行时,可以通过指向基类的指针,来调用实现派生类中的方法。也就是说客户类其实在调用方法时,并不需要知道特定子类的实现,都会用统一的方式来调用。

 

以下UML图是(41C),图中表示(42B 表示(43D)。

 

41A. 序列图   B. 状态图   C. 通信图   D. 活动图

42A.        B. 对象     C. 流名称     D. 消息

43A.        B. 对象     C. 流名称     D. 消息

【解析】从图示可以了解到,题目中的图是通信图。通信图描述的是对象和对象之间的关系,即一个类操作的实现。简而言之就是,对象和对象之间的调用关系,体现的是一种组织关系。该图明显表达的是对象与对象之间的关系。其中如果一个框中的名称中带有:,说明这表示的是一个对象,:”号前的部分是对象名,:后面的部分是类名。而对象之间连线上面的箭头所标识的是对象之间通信的消息。

 

下图所示为观察者(Obserrver)模式的抽象示意图,其中( 44 )知道其观察者,可以有任何多个观察者观察同一个目标;提供住处和删除观察者对象的接口。此模式体现的最主要的特征是( 45 )

44A.  Subject   B.  Observer   C.  ConcreteSubject   D.  ConcreteObserver

45A. 类应该对扩展开放,对修改关闭    B. 使所要交互的对象尽量松耦合 

    C. 组合优先于继承使用     D. 仅与直接关联类交互

【解析】观察者将自己注册到事件,那么具体的事件就知道了自己的观察者。观察者和事件都有自己的抽象,当实现具体的观察者和事件的时候都要实现相应接口,所以对扩展是开放的。

 

装饰器 (Decorator) 模式用于 ( 46 B );外观 (Facade) 模式用于( 47 D )

①将一个对象加以包装以给客户提供其希望的另外一个接口

②将一个对象加以包装以提供一些额外的行为

③将一个对象加以包装以控制对这个对象的访问

④将一系列对象加以包装以简化其接口

46A.    B.    C.    D.

47A.    B.    C.    D.

【解析】装饰模式是一种对象结构型模式,可动态地给一个对象增加一些额外的职责,就增加对象功能来说,装饰模式比生成子类实现更为灵活。通过装饰模式,可以在不影响其他对象的情况下,以动态、透明的方式给单个对象添加职;当需要动态地给一个对象增加功能,这些功能可以再动态地被撤销时可使用装饰模式;当不能采用生成子类的方法进行扩充时也可使用装饰模式。

外观模式是对象的结构模式,要求外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

48、某确定的有限自动机 (DFA) 的状态转换图如下图所示 (A 是初态,DE 是终态),则该 DFA 能识别 ( C )

  A.  00110   B.  10101   C.  11100   D.  11001

【解析】选项中,只有C选项的字符串能被DFA解析。解析路径为:ACEEBDD

49函数main()f()的定义如下所示,调用函数们f()时,第一个参数采用传值 (call by value) 方式,第二个参数采用传引用 (call by reference) 方式, main() 函数中 "print(x)" 执行后输出的值为 ( B )

A. 11   B. 40   C. 45   D. 70

【解析】当值传递的时候,将原来的参数复制了一份,但是引用传递的时候是将变本身传了出去,因此,a代表的其实就是x本身,f函数里面的x是另一个变,只有a的变化才能导致main函数里面的x值的变化。

50、下图为一个表达式的语法树,该表达式的后缀形式为 ( A )

 

A.  x 5 y + * a / b -         B.  x 5 y a b*+/-

C.  -/ * x + 5 y a b          D.  x 5 * y + a/b-

【解析】要得到题目中的表达式语法树后缀形式,只需要对树进行后序遍历即可,后序遍历的结果为:x5y+*a/b-

 

若事务T1对数据 D1 加了共享锁,事务 T2 T3分别对数据D2 D3 加了排它锁,则事务T1对数据( 51 D ) ;事务T2对数据( 52 C )

51A.  D2 D3 加排它锁都成功              B.  D2 D3 加共享锁都成功 

    C.  D2 加共享锁成功 ,D3 加排它锁失败   D.  D2 D3 加排它锁和共享锁都失败

52A.  D1 D3 加共享锁都失败              B.  D1D3 加共享锁都成功 

C.  D1 加共享锁成功 ,D3 如排它锁失败   D.  D1 加排它锁成功 ,D3 加共享锁失败

【解析】共亨锁(S锁):称读锁,若事务T对数据对象A加上S锁,其他事务只能再对AS锁,而不能加X锁,直到T释放A上的S锁。

排他锁(X锁):称写锁。若事务T对数据对象A加上X锁,其他事务不能再对A加任何锁,直到T释放A的锁。

53、假设关系R<U,F>,U= {A1,A2, A3}F = {A1A3 A2,A1A2 A3},则关系R的各候选关键字中必定含有属性( A )

  A. A1     B. A2     C. A3     D. A2 A3

【解析】既能唯一标识元组,包含的字段又是最精炼的,而且如果去掉其中任何一个字段后不再能唯一标识元组,那么就是候选关键字。此题中候选关键字有A1A3A1A2。所以候选关键字中必有的属性是A1

 

在某企业的工程项目管理系统的数据库中供应商关系Supp、项目关系Proj和零件关系PartE-R模型和关系模式如下:

Supp(供应商号,供应商名,地址,电话)

Proj(项目号,项目名,负责人,电话)

Part(零件号,零件名)

其中,每个供应商可以为多个项目供应多种零件,每个项目可由多个供应商供应多种零件。SP_P需要生成一个独立的关系模式,其联系类型为( 54 A

给定关系模式SP_P(供应商号,项目号,零件号,数量)查询至少供应了3个项目(包含3项)的供应商,输出其供应商号和供应零件数量的总和,并按供应商号降序排列。

SELECT 供应商号,SUM(数量) FROM ( 55 D ) GROUP BY 供应商号 ( 56 C ) ORDER BY 供应商号DESC;

54A.  *:*:*      B.  1:*:*       C.  1:1:*        D.  1:1:1

55A.  Supp      B.  Proj        C.  Part         D.  SP_P

56A.  HAVING COUNT(项目号)>2 

  B.  WHERE COUNT(项目号)>2 

    C.  HAVING COUNT(DISTINCT(项目号))>2

    D.  WHERE COUNT(DISTINCT(项目号))>3

【解析】后面2个空考查的是SQL语言,目前需要查询的是零件数最总和,很明显在题目的多个关系中只有SP_P有这个性。所以查询只能FROM SP_P。接下分析如何能把至少供应了3个项目的供应商找出来,此时需要写查询条件。査询条件WhereHaving別要弄清楚,Where是针对单条记录的判断条件,而Having是针对分组之后的判断条件,此处应选Having,同时,由于考虑到项目号可能重复,所以需要加Distinct关键字以便去掉重复。

57、以下关于字符串的叙述中,正确的是( C

  A. 包含任意个空格字符的字符串称为空串 

  B. 字符串不是线性数据结构 

  C. 字符串的长度是指串中所含字符的个数 

  D. 字符串的长度是指串中所含非空格字符的个数

【解析】后面2个空考查的是SQL语言,目前需要查询的是零件数最总和,很明显在题目的多个关系中只有SP_P有这个性。所以查询只能FROM SP_P。接下分析如何能把至少供应了3个项目的供应商找出来,此时需要写查询条件。査询条件WhereHaving別要弄清楚,Where是针对单条记录的判断条件,而Having是针对分组之后的判断条件,此处应选Having,同时,由于考虑到项目号可能重复,所以需要加Distinct关键字以便去掉重复。

58、已知栈S 初始为空,用 I 表示入栈、O表示出栈,若入栈序列为a1a2a3a4a5,则通过栈 S 得到出栈序列a2a4a5a3a1的合法操作序列( A )

  A.  IIOIIOIOOO   B.  IOIOIOIOIO   C.  IOOIIOIOIO   D.  IIOOIOIOOO

【解析】

IIOIIOIOOO 出栈序列为:a2a4a5a3a1

IOIOIOIOIO 出栈序列为:a1a2a3a4a5

IOOIIOIOIO 无合法的出栈序列:因为入栈1个元素,出栈2个元素,会产生错误 

IIOOIOIOOO 无合法的出栈序列:操作序列中4次入栈6次出栈,会产证错误

59、某二叉树的先序遍历序列为 ABCDEF ,中序遍历序列为BADCFE ,则该二叉树的高度(即层数)( B ) 

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

【解析】先序遍历即先根后左子树再右子树,中序遍历为先左子树后跟再右子树。先序遍历的最开始结点A即为整棵树的根,结合中序遍历A结点左侧B即为根节点A的左子树,右侧DCFE则为A的右子树,理可以得出CA的右子树的根节点DC的左子树EFC的右子树,FE的左子树。所以该二树的高度为4

60、对于n个元素的关键宇序列{k1,k2, ...kn},当且仅当满足关系kik2ikik2i+1{i=1.2...[n/2]} 时称其为小根堆(小顶堆)。以下序列中,( D  )不是小根堆。

  A.  16,25,40,55,30,50,45    B.  16,40,25,50,45,30,55

  C.  16,25,39.,41,45,43,50   D.  16,40,25,53,39,55,45

【解析】D答案中第二个关键字小于第五个关键字,不满足小根堆的条件。

61、在12个互异元素构成的有序数组 a[1..12] 中进行二分查找(即折半查找,向下取 整),若待查找的元素正好等于a[9],则在此过程中,依次与数组中的( B )比较后,查找成功结束。

  A.  a[6]a[7]a[8]a[9]      B.  a[6]a[9] 

  C.  a[6]a[7]a[9]              D.  a[6]a[8]a[9]

【解析】二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]x做比较,如果x=a[n/2],则找到x,算法中;如果x<a[n/2],则只要在数组a的左半部分继续搜索x,如x>a[n/2],则只要在数组a的右半部搜索x故查找顺序如下图所示:

 

某汽车加工工厂有两条装配线L1L2,每条装配线的工位数均为nSiji=12j= 12...n),两条装配线对应的工位完成同样的加工工作,但是所需要的时间可能不同(aiji=12j = 12...n)。汽车底盘开始到进入两条装配线的时间 (e1e2) 以及装配后到结束的时间(X1X2)也可能不相同。从一个工位加工后流到下一个工位需要迁移时间(tiji=12j =2...n)。现在要以最快的时间完成一辆汽车的装配,求最优的装配路线。

分析该问题,发现问题具有最优子结构。以 L1为例,除了第一个工位之外,经过第j个工位的最短时间包含了经过L1的第j-1个工位的最短时间或者经过L2的第j-1个工位的最短时间,如式(1)。装配后到结束的最短时间包含离开L1的最短时间或者离开L2的最短时间如式(2)。

 

由于在求解经过L1L2的第j个工位的最短时间均包含了经过L1的第j-1个工位的最短时间或者经过L2的第j-1个工位的最短时间,该问题具有重复子问题的性质,故采用迭代方法求解。

该问题采用的算法设计策略是(62 B),算法的时间复杂度为(63 B)。

以下是一个装配调度实例,其最短的装配时间为(64 A),装配路线为(65 B)。

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

63A.  O(lgn)   B.  O(n)   C.  O(n2)   D.  O(nlgn)

64A.  21   B.  23   C.  20   D.  26

65A. S11S12S13    B. S11S22S13    C. S21S12S23   D. S21S22S23

66、在浏览器地址栏输入一个正确的网址后,本地主机将首先在( B )查询该网址对应的IP地址。

  A. 本地DNS缓存    B. 本机hosts文件    C. 本地DNS服务器    D. 根域名服务器

67、下面关于Linux目录的描述中,正确的是( C )

  A. Linux只有一个根目录,用 " /root "表示 

  B. Linux中有多个根目录,用"/"加相应目录名称表示 

  C. Linux中只有一个根目录,用"/"表示 

  D. Linux 中有多个根目录,用相应目录名称表示

68、以下关于TCP/IP 协议栈中协议和层次的对应关系正确的是( C 

A. B.    C.    D.

69、在异步通信中,每个字符包含 1 位起始位、7位数据位和2位终止位,若每秒钟传送500个字符,则有效数据速率为( C )

  A. 500b/s   B. 700b/s   C. 3500b/s   D. 5000b/s

【解析】(1+7+2)*500*7/10=3500b/s

70、以下路由策略中,依据网络信息经常更新路由的是( D )

  A.  静态路由   B.  洪泛式   C.  随机路由   D.  自适应路由

【解析】静态路由路由信息是不进行路由信息更新的;动态路由选择算法就是自适应路由选择算法,是依靠当前网络的状态信息进行决策,从而使路由选择结果在一定程度上适应网络拓扑结构和通信量的变化,需要依据网络信息经常更新路由。随机路由使用前向代理来收集网络中的有限全局信息即当前结点到其源结点的旅行时间并以此来更新结点的旅行时间表;洪泛路由是一种简单的路由算法,将收到的封包,往所有的可能连结路径上递送,直到封包到达为止。

The beauty of software is in its function, in its internal structure, and in the way in which it is created by a team. To a user, a program with just the right features presented through an intuitive and( 71 )interface is beautiful. To a software designer, an internal structure that is partitioned in a simple and intuitive manner, and that minimizes internal coupling is beautiful. To developers and managers, a motivated team of developers making significant progress every week, and producing defect-free code, is beautiful. There is beauty on all these levels.

Our world needs software--lots of software. Fifty years ago software was something that ran in a few big and expensive machines. Thirty years ago it was something that ran in most companies and industrial settings. Now there is software running in our cell phones, watches, appliances, automobiles, toys, and tools. And need for new and better software never( 72 ). As our civilization grows and expands, as developing nations build their infrastructures, as developed nations strive to achieve ever greater efficiencies, the need for more and more Software( 73 )to increase. It would be a great shame if, in all that softwarethere was no beauty.

We know that software can be ugly. We know that it can be hard to use, unreliable, and carelessly structured. We know that there are software systems whose tangled and careless internal structures make them expensive and difficult to change. We know that there are software systems that present their features through an awkward and cumbersome interface. We know that there are software systems that crash and misbehave. These are( 74) systems. Unfortunately, as a profession, software developers tend to create more ugly systems than beautiful ones.

There is a secret that the best software developers know. Beauty is cheaper than ugliness. Beauty is faster than ugliness. A beautiful software system can be built and maintained in less time, and for less money, than an ugly one. Novice software developers don't understand this. They think that they have to do everything fast and quick. They think that beauty is( 75 ). No! By doing things fast and quick, they make messes that make the software stiff, and hard to understand, Beautiful systems e flexible and easy to understand. Building them and maintaining them is a joy. It is ugliness that is impractical. Ugliness will slow you down and make your software expensive and brittle. Beautiful systems cost the least build and maintain, and are delivered soonest.

71A. Simple         B. Hard         C. Complex          D. duplicated

72A. happens        B. exists       C. stops            D. starts

73A. starts         B. continues    C. appears          D. stops

74A. practical     B. useful        C. beautiful       D. ugly

75A. impractical   B. perfect       C. time-wasting   D. practical

71A     72C     73B     74D     75A

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

猜你喜欢

转载自blog.csdn.net/lwq629029/article/details/79944732