200711软设上午真题
第 1 题
在指令系统的各种寻址方式中,获取操作数最快的方式是( )。若操作数的地址包含在指令中,则属于( )方式。
- (A) 直接寻址
- (B) 立即寻址
- (C) 寄存器寻址
- (D) 间接寻址
- (A) 直接寻址
- (B) 立即寻址
- (C) 寄存器寻址
- (D) 间接寻址
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B],[A]]
- 试题解析:
本题考查的是计算机系统方面的基础知识。根据指令的寻址方式的定义,操作数的地址包含在指令中的寻址方式是直接寻址;操作数在寄存器中的寻址方式是寄存器寻址;操作数的地址存放在寄存器中的寻址方式是寄存器间接寻址。
第 2 题
系统响应时间和作业吞吐量是衡量计算机系统性能的重要指标。对于一个持续处理业务的系统而言,( ),表明其性能越好。
- (A) 响应时间越短,作业吞吐量越小
- (B) 响应时间越短,作业吞吐量越大
- (C) 响应时间越长,作业吞吐量越大
- (D) 响应时间不会影响作业吞吐量
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[B]]
- 试题解析:
本题考查的是计算机系统方面的基础知识。系统响应时间是指用户发出完整请求到系统完成任务给出响应的时间间隔。作业吞吐量是指单位时间内系统完成的任务量。若一个给定系统持续地收到用户提交的任务请求,则系统的响应时间将对作业吞吐量造成一定影响。若每个任务的响应时间越短,则系统的空闲资源较多,整个系统在单位时间内完成的任务量将越大;反之,若响应时间越长,则系统的空闲资源较少,整个系统在单位时间内完成的任务量将越小。
第 3 题
若每一条指令都可以分解为取指、分析和执行三步。己知取指时间t取指=4△t,分析时间t分析=3△t,执行时间t执行=5△t。如果按串行方式执行完100条指令需要( )△t。如果按照流水方式执行,执行完100条指令需要( )△t。
- (A) 1190
- (B) 1195
- (C) 1200
- (D) 1205
- (A) 504
- (B) 507
- (C) 508
- (D) 515
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[C],[B]]
- 试题解析:
顺序执行时,每条指令都需三步才能执行完,设有重叠。总的执行时间为: (4+3+5)△t*100=1200△t 当流水线执行时: (4+3+5)△t+(100-1)*5△t=507△t
第 4 题
若内存地址区间为4000H~43FFH,每个存贮单元可存储16位二进制数,该内存区域用4片存储器芯片构成,则构成该内存所用的存储器芯片的容量是( )。
- (A) 512×16bit
- (B) 256×8bit
- (C) 256×16bit
- (D) 1024×8bit
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[['C']]
- 试题解析:
首先将地址编码转换为十进制数,4000H(16)=16384(10), 43FFH(16)=17407(10),然后令两个地址码相减再加1,即得到这段地址空间中存储单元的个数。17407-16384+1=1024,因此共有1024个内存单元。1024 × 16b/4=256 ×16b,因此芯片的容量为256× 16b。
第 5 题
某Web网站向CA申请了数字证书。用户登录该网站时,通过验证( ),可确认该数字证书的有效性,从而( )。
- (A) CA的签名
- (B) 网站的签名
- (C) 会话密钥
- (D) DES密码
- (A) 向网站确认自己的身份
- (B) 获取访问网站的权限
- (C) 和网站进行双向认证
- (D) 验证该网站的真伪
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A],[D]]
- 试题解析:
本题考查的是公钥基础设施方面有关数字签名的基础知识。数字证书能够验证一个实体身份,而这是在保证数字证书本身有效性这一前提下才能够实现的。验证数字证书的有效性是通过验证颁发证书的CA的签名实现的。
第 6 题
实现VPN的关键技术主要有隧道技术、加解密技术、( )和身份认证技术。
- (A) 入侵检测技术
- (B) 病毒防治技术
- (C) 安全审计技术
- (D) 密钥管理技术
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是VPN方面的基础知识。应该知道实现VPN的关键技术主要有隧道技、加解密技术、密钥管理技术和身份认证技术。L2TP、 PPTP是两种链路层的VPN协,TLS是传输层VPN协议,IPsec是网络层VPN协议。
第 7 题
若某人持有盗版软件,但他本人确实不知道该软件是盗版的,则( )承担侵权责任。
- (A) 应由该软件的持有者
- (B) 应由该软件的提供者
- (C) 应由该软件的提供者和持有者共同
- (D) 该软件的提供者和持有者都不
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
“盗版软件”即侵权的软件复制品。《计算机软件保护条例》使用了软件侵权复制品持有人主观上知道或者应当知道所持软件是否为侵权复制品为标准。知道软件是侵权复制品而使用运行,持有人主观上应当属于故意,即明知故犯;有合理理由推论或者认定持有人应当知道其对所使用运行的软件为侵权复制品,如主观上存有疏忽大意等过失,而使用运行了侵权复制品,应当承担法律责任。主观上不知或者没有合理理由应知的持有人,对该软件的使用运行等行为不承担民事赔偿责任。但是当其一旦知道了所使用的软件为侵权复制品时,应当履行停止使用、销毁该软件的法律义务。
《计算机软件保护条例》第二十八条规定,软件复制品的出版者、制作者不能证明其出版、制作有合法授权的,或者软件复制品的发行者、出租者不能证明其发行、出租的复制品有合法来源的,应当承担法律责任。
第 8 题
( )不属于知识产权的范围。
- (A) 地理标志权
- (B) 物权
- (C) 邻接权
- (D) 商业秘密权
答案与解析
- 试题难度:较难
- 知识点:
- 试题答案:[[B]]
- 试题解析:
著作权、邻接权、专利权、商标权、商业秘密权和集成电路布图设计权属于知识产权的范围。物权不属于知识产权的范围。
第 9 题
W3C制定了同步多媒体集成语言规范,称为( )规范。
- (A) XML
- (B) SMIL
- (C) VRML
- (D) SGML
答案与解析
- 试题难度:较难
- 知识点:
- 试题答案:[[B]]
- 试题解析:
W3C制定的SMIL (Synchronized Multimedia Integration Language,同步多媒体集成语言规范)是W3C为采用XML描述多媒体而提出的建议标准,它采用XML标准来描述多媒体中的各种不同内容的时间序列和画面构成,定义了时间标签、层次布局、图像、动画、视觉渐变和媒体嵌入等元素。用户可以简单地使用SMIL语言在一个多媒体作品中按时间序列自由组织音频、视频和文字等各种媒体内容。
第 10 题
对同一段音乐可以选用MIDI格式或WAV格式来记录存储。以下叙述中( )是不正确的。
- (A) WAV格式的音乐数据量比MIDI格式的音乐数据量大
- (B) 记录演唱会实况不能采用MIDI格式的音乐数据
- (C) WAV格式的音乐数据没有体现音乐的曲谱信息
- (D) WAV格式的音乐数据和MIDI格式的音乐数据都能记录音乐波形信息
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查计算机音乐信息处理技术的相关知识。WAV格式记录的是对于音乐信号的波形采样数据,它可以使用反映自然声音的信号采样序列来记录和回放声音信息。MIDI格式记录的是采用音乐信息序列交换的标准格式MIDI ( Musical Instrument Digital interface)标准来存贮和表达音乐的演奏信息,这些演奏信息包含每个音符演奏的时间信息、音量信息、长度信息、乐器或音色信息等,MID工消息序列可以间接反映出音乐的曲谱演奏信息。
第 11 题
设计制作一个多媒体地图导航系统,使其能根据用户需求缩放地图并自动搜索路径,最适合的地图数据应该是( )。
- (A) 真彩色图像
- (B) 航拍图像
- (C) 矢量化图形
- (D) 高清晰灰度图像
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题考查矢量化图形和位图的基本知识。矢量化图形保存最少的信息,文件大小比位图要小,并且文件大小与物体的大小无关。可以无限地放大这个圆,它仍然保持平滑,所表达物体的运动、缩放、旋转和填充等都不会降低绘制的精度。所以矢量化图形是最适合电子地图的基木信息格式。
第 12 题
给定C语言的数据结构
struct T
{
int w;
union T { char c; int i; double d; } U;
};
假设char类型变量的存储区大小是1字节,int 类型变量的存储区大小是4字节,double类型变量的存储区大小是8字节,则在不考虑字对齐方式的情况下,为存储一个struct T类型变量所需要的存储区域至少应为( )字节。
- (A) 4
- (B) 8
- (C) 12
- (D) 17
答案与解析
- 试题难度:较难
- 知识点:
- 试题答案:[[C]]
- 试题解析:
在不考虑字对齐规则的情况下,C语言中一个结构体变量的存储区大小就是其所有成员所需存储区大小之和,一个联合体变量的存储区大小就是其各成员所需存储区大小中的最大者。因此题目中给定的联合体union T变量需要的存储区大小就是存储一个double类型变量的大小(即8字节),struct T类型变量的存储区最小应为int类型成员w存储区大小(4字节)与union T类型成员U的存储区大小之和,即12字节。
第 13 题
在过程式程序设计(①)、数据抽象程序设计(②)、面向对象程序设计(③)、泛型(通用)程序设计(④)中,C++ 语言支持( ),C语言支持( )。
- (A) ①
- (B) ②③
- (C) ③④
- (D) ①②③④
- (A) ①
- (B) ②③
- (C) ③④
- (D) ①②③④
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D],[A]]
- 试题解析:
本题提到的4种程序设计范型是比较流行的,且分别被多种程序设计语言所支持。经典的C语言目前仅支持过程式程序设计范型,这是一种基于任务分解的、自上而下的程序设计方法。数据抽象程序设计范型允许将问题空间和解空间中的事物、概念等采用类机制来表示。面向对象程序设计范型比数据抽象更进一步,支持继承、多态等,更加符合客观世界的规律。泛型程序设计即设计出通用算法、通用类型,并使它们应用于多种数据类型。
C++语言以C语言为基础,增加了后三种程序设计范型的支持,它是目前使用广泛的程序设计语言之一。
第 14 题
C语言是一种( )语言。
- (A) 编译型
- (B) 解释型
- (C) 编译、解释混合型
- (D) 脚本
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
编译型语言指用该语言编写的程序在执行前,需要由相应的编译器将源程序翻译为目标代码程序,然后在目标机器上运行目标代码程序。解释型语言指用该语言编写的程序无需编译为目标代码,即可执行。对于解释型语言,都有相应的解释器,负责检查源程序的语法,进行语义分析,通常采用边翻译边执行的方式。
对于C语言而言,一个C源程序必须由编译器将其翻译为目标代码,才能在目标机上运行,因此,它是编译型语言。
第 15 题
采用UML进行软件建模过程中,类图是系统的一种静态视图,用( )可明确表示两类事物之间存在的整体/部分形式的关联关系。
- (A) 依赖关系
- (B) 聚合关系
- (C) 泛化关系
- (D) 实现关系
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
类图是描述类的构成以其多个类之间存在的静态关系的一种工具。对于一个系统中的两个类而言,它们要么不存在任何关系,要么存在is-like-a的关系,或has-a的关系.其中is-like-a表示两个类之间的继承关系,has-a表示两个类之间存在的整体与部分形式的组成关系,即其中一个类的数据成员的类型是另外一个类,而这种关系在UML中采用聚合关系表示。
第 16 题
若程序运行时系统报告除数为0,这属于( )错误。
- (A) 语法
- (B) 语用
- (C) 语义
- (D) 语境
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题考查程序语言的基础知识。
程序员编写的源程序中往往会有一些错误,这些错误大致被分为静态错误和动态错误两类。所谓动态错误,是指源程序中的逻辑错误,它们发生在程序运行的时候,比如算法逻辑上的错误。动态错误也被称为动态语义错误,如变量取值为0是被用作除数,引用数组元素时下标出界等。静态错误又可以分为语法错误和静态语义错误。词法和语法错误是指有关语言结构上的错误,如单词拼写错误就是一种词法错误,表达式中缺少操作数、括号不匹配是不符合语法规则要求的语法错误等。静态的语义错误是指分析源程序时可以发现的语言意义上的错误,如加法的两个操作数中一个是实型变量名,而另一个是数组名等。
第 17 题
集合L={ambm|m≥0}( )。
- (A) 可用正规式“a*b* ”表示
- (B) 不能用正规式表示,但可用非确定的有限自动机识别
- (C) 可用正规式“ ambm”表示
- (D) 不能用正规式表示,但可用上下文无关文法表示
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
能用正规式描述的集合可用有限自动机识别,任何一个非确定的有限自动机都可以找到其对应的确定有限自动机。
集合L={ambm|m≥0} 中字符串的特点是m个a后跟m个b,需要对a和b进行计数,确定的和非确定的有限自动机不具备该能力。
第 18 题
表达式“X = A + B ×(C - D)/E”的后缀表示形式可以为( )(运算符优先级相同时,遵循左结合的原则)。
- (A) XAB + CDE/-´=
- (B) XA+BC-DE/´=
- (C) XABCD-´E/+=
- (D) XABCDE+´-/=
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[['C']]
- 试题解析:
本题考查程序语言的基础知识。
表达式采用后缀表示时,运算对象写在前面,运算符号写在运算对象的后面,这样可根据运算符号在表达式中的顺序进行计算,所以无需使用括号。对于表达式X=A+B×(C-D)/E,其运算过程为先将C减去D,其结果与B相乘,之后除以E,再与A相加并将最后的结果赋给X。
第 19 题
设备驱动程序是直接与( )打交道的软件模块。一般而言,设备驱动程序的任务是接受来自与设备( )。
- (A) 硬件
- (B) 办公软件
- (C) 编译程序
- (D) 连接程序
- (A) 有关的上层软件的抽象请求,进行与设备相关的处理
- (B) 无关的上层软件的抽象请求,进行与设备相关的处理
- (C) 有关的上层软件的抽象请求,进行与设备无关的处理
- (D) 无关的上层软件的抽象请求,进行与设备无关的处理
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A],[B]]
- 试题解析:
本题考查的是操作系统设备管理中的基础知识。
设备驱动程序是直接与硬件打交道的软件模块。一般而言,设备驱动程序的任务是接受来自于设备无关的上层软件的抽象请求,进行与设备相关的处理。
参考答案
第 20 题
某系统中有四种互斥资源R1、R2、R3和R4,可用资源数分别为3、5、6和8。假设在T0时刻有P1、P2、P3和P4 四个进程,并且这些进程对资源的最大需求量和已分配资源数如下表所示,那么在T0时刻系统中R1、R2、R3和R4的剩余资源数分别为( )。如果从T0时刻开始进程按( )顺序逐个调度执行,那么系统状态是安全的。
- (A) 3、5、6和8
- (B) 3、4、2和2
- (C) 0、1、2和1
- (D) 0、1、0和1
- (A) P1→P2→P4→P3
- (B) P2→P1→P4→P3
- (C) P3→P2→P1→P4
- (D) P4→P2→P3→P1
答案与解析
- 试题难度:一般
- 知识点:操作系统>银行家算法
- 试题答案:[['D'],['C']]
- 试题解析:
本题考查的是操作系统进程管理中死锁检测的多项资源银行家算法。
由于T0时刻已用资源数为3,4,6,7。故剩余资源数为0、1、0和1,各进程尚需资源数列表如下。
第 21 题
页式存储系统的逻辑地址是由页号和页内地址两部分组成,地址变换过程如下图所示。假定页面的大小为8K,图中所示的十进制逻辑地址9612经过地址变换后,形成的物理地址a应为十进制( )。
- (A) 42380
- (B) 25996
- (C) 9612
- (D) 8192
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
木题考查的是页式存储管理中的地址变换知识。在页式存储管理中,有效地址除页的大小,取整为页号,取余为页内地址。本题页面的大小为8KB,有效地址9612除8192,取整为1,取余为1420。我们先查页表的物理块号3,因此有效地址a为8192 × 3+1420等于25996。
第 22 题
若文件系统容许不同用户的文件可以具有相同的文件名,则操作系统应采用( )来实现。
- (A) 索引表
- (B) 索引文件
- (C) 指针
- (D) 多级目录
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是操作系统中文件管理的基本知识及应用。常见的目录结构有三种:一级目录结构、二级目录结构和多级目录结构。一级目录的整个目录组织是一个线性结构,在整个系统中只需建立一张目录表,系统为每个文件分配一个目录项(文件控制块)。一级目录结构简单,但缺点是查找速度慢,不允许重名和不便于实现文件共享等,因此它主要用在单用户环境中。为了克服一级目录结构存在的缺点,引入了二级目录结构。二级目录结构是由主文件目录MFD (Master File Directory)和用户目录UFD(User File Directory)组成的。采用二级目录结构也存在一些问题。该结构虽然能有效地将多个用户隔离开。这种隔离在各个用户之间完全无关时是一个优点;但当多个用户之间要相互合作去共同完成一个大任务。且一个用户又需去访问其他用户的文件时,这种隔离便成为一个缺点,因为这种隔离使诸用户之间不便于共享文件。所以引入多级目录结构,这样允许不同用户的文件可以具有相同的文件名。
第 23 题
在软件开发中, ( )不能用来描述项目开发的进度安排。在其他三种图中,可用( )动态地反映项目开发进展情况。
- (A) 甘特图
- (B) PERT图
- (C) PERT/CPM图
- (D) 鱼骨图
- (A) 甘特图
- (B) PERT图
- (C) PERT/CPM图
- (D) 鱼骨图
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D],[A]]
- 试题解析:
甘特图、PERT(计划评审技术)图及CPM(关键路径法)图是软件项目管理中常用的管理开发进度的工具,鱼骨图是常用来发现问题根源并提出解决问题的有效办法的工具。在这三种开发进度管理工具图中,甘特图能够消晰描述每个任务的开始/结束时间及各任务之间的并行性,也可以动态地反映项目的开发进展情况,但难以反映多个任务之间存在的逻辑关系;PERT利用项目的网络图和各活动所需时间的估计值(通过加权平均得到的)去计算项目总时间,强调任务之间的先后关系,但不能反映任务之间的并行性,以及项目的当前进展情况;CPM借助网络图和各活动所需时间,计算每一活动的最早或最迟开始和结束时间。CPM的关键是计算总时差,这样可决定哪一活动有最小时间弹性。PERT利用项目的网络图和各活动所需时间的估计值(通过加权平均得到)去计算项目总时间。PERT不同于CPM的主要点在于PERT利用期望值而不是最可能的活动所需时间估计(在CPM法中用的)。
第 24 题
选择软件开发工具时,应考虑功能、( )、稳健性、硬件要求和性能、服务和支持。
- (A) 易用性
- (B) 易维护性
- (C) 可移植性
- (D) 可扩充性
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
为提高开发效率,通常的软件开发活动中需要若干开发工具的支持。而在选择这些支撑工具时,应当选择功能上满足需要、运行稳定、且具有良好服务支持的工具。另外,工具的易用性也是需要考虑的一个重要因素,因为一个容易使用的工具可有效提高开发效率。
第 25 题
内聚性和耦合性是度量软件模块独立性的重要准则,软件设计时应力求( )。
- (A) 高内聚,高耦合
- (B) 高内聚,低耦合
- (C) 低内聚,高耦合
- (D) 低内聚,低耦合
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[B]]
- 试题解析:
一个模块的独立度通常使用聚合和祸合程度来度量。聚合衡量模块内部各元素结合的紧密程度:祸合度量不同模块间互相依赖的程度。提高聚合程度,降低模块之间的祸合程度是模块设计应该遵循的最重要的两个原则。聚合与祸合是相辅相成的两个设计原则,模块内的高聚合往往意味着模块之间的松祸合。而要想提高模块内部的聚合性,必须减少模块之间的联系。
第 26 题
某大型软件系统按功能可划分为2段P1和P2。为提高系统可靠性,软件应用单位设计了如下图给出的软件冗余容错结构,其中P1和P2均有一个与其完全相同的冗余备份。若P1的可靠度为0.9,P2的可靠度为0.9,则整个系统的可靠度是( )。
- (A) 0.6561
- (B) 0.81
- (C) 0.9801
- (D) 0.9
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题描述的系统中,两个P1部件形成并联子系统,其可靠度为:
1-(1-0.9) ×(1-0.9)=0.99
同样,两个P2部件形成并联子系统,其可称度为0.99。这两个并联子系统形成串联系统。所以整个系统的可靠性就是两个子系统可靠性的乘积,即0.99 × 0.99 =0.9801 。
第 27 题
对于如下的程序流程,当采用语句覆盖法设计测试案例时,至少需要设计( )个测试案例。
- (A) 1
- (B) 2
- (C) 3
- (D) 4
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
语句覆盖是一种设计测试案例的方法,它要求对于设计的测试案例,必须使得程序的每一条可执行语句至少执行一次。故可设计如下测试案例。
案例1:X=1,Y=2
此时执行语句序列为:X>O→Y=Y-X→Y>0→X=1
案例2: X=-3, Y=-2
此时执行语句序列为:X>O→Y =Y +X→Y>0→X =-1
可见,只需设计两个测试案例,即可使得程序的每条可执行语句至少执行一次。
第 28 题
为验证程序模块A是否正确实现了规定的功能,需要进行( );为验证模块A能否与其他模块按照规定方式正确工作,需要进行( )。
- (A) 单元测试
- (B) 集成测试
- (C) 确认测试
- (D) 系统测试
- (A) 单元测试
- (B) 集成测试
- (C) 确认测试
- (D) 系统测试
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[A],[B]]
- 试题解析:
软件测试是为了发现程序中的错误,对于不同粒度的软件,需要进行不同的测试。软件开发过程中,通常需要进行单元测试、集成测试、确认测试和系统测试等步骤。其中单元测试也称为模块测试,是在一个模块编写完成后进行,以检查该模块是否正确实现了规定功能,该测试一般使用白盒测试法设计测试案例。当模块测试完成后,还需要检查该模块能否和其他模块按照既定方式正确工作,即验证多个模块组装后能够按照软件设计要求正常、正确地工作,这种测试过程就是集成测试,也称为组装测试。
第 29 题
( )表示了系统与参与者之间的接口。在每一个用例中,该对象从参与者处收集信息,并将之转换为一种被实体对象和控制对象使用的形式。
- (A) 边界对象
- (B) 可视化对象
- (C) 抽象对象
- (D) 实体对象
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查的是面向对象设计中各种对象的职责。经典的MVC模式中,边界对象表示了系统与参与者之间的接口,该对象从参与者处收集信息,并将之转换为二种被实体对象和控制对象使用的形式。
第 30 题
在UML语言中,下图中的a、b、c三种图形符号按照顺序分别表示( )。
- (A) 边界对象、实体对象、控制对象
- (B) 实体对象、边界对象、控制对象
- (C) 控制对象、实体对象、边界对象
- (D) 边界对象、控制对象、实体对象
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题考查的是采用UML进行面向对象设计过程中,各种不同对象的图形表示,按照上述的图形顺序,分别表示控制对象、实体对象、边界对象。
第 31 题
在下面的用例图(UseCase Diagram)中,X1、X2和X3表示( ),已知UC3是抽象用例,那么X1可通过( )用例与系统进行交互。并且,用例( )是UC4的可选部分,用例( )是UC4的必须部分。
- (A) 人
- (B) 系统
- (C) 参与者
- (D) 外部软件
- (A) UC4、UC1
- (B) UC5、UC1
- (C) UC5、UC2
- (D) UC1、UC2
- (A) UC1
- (B) UC2
- (C) UC3
- (D) UC5
- (A) UC1
- (B) UC2
- (C) UC3
- (D) UC5
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[C],[A],[B],[D]]
- 试题解析:
本题考查的是用例模型的基本知识,用例模型中,x1, x2和x3分别表示用例的参与者。因为U3是抽象用例,所以参与者实际上可以通过其子用例UC1和UC4与系统进行交互。用例模型中include表示的是必须用例,而extend表示可选用例。
第 32 题
( )设计模式定义了对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。
- (A) Adapter(适配器)
- (B) Iterator(迭代器)
- (C) Prototype(原型)
- (D) Observer(观察者)
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是设计模式的基本知识,常用的23种设计模式中,观察者模式定义了对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动刷新。
第 33 题
UML中有多种类型的图,其中,( )对系统的使用方式进行分类, ( )显示了类及其相互关系,( )显示人或对象的活动,其方式类似于流程图,通信图显示在某种情况下对象之间发送的消息, ( )与通信图类似,但强调的是顺序而不是连接。
- (A) 用例图
- (B) 顺序图
- (C) 类图
- (D) 活动图
- (A) 用例图
- (B) 顺序图
- (C) 类图
- (D) 活动图
- (A) 用例图
- (B) 顺序图
- (C) 类图
- (D) 活动图
- (A) 用例图
- (B) 顺序图
- (C) 类图
- (D) 活动图
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[A],[C],[D],[B]]
- 试题解析:
本题考查的是UML建模中各种模型的作用。用例图展示了用例模型,从用户使用系统的角度对系统进行了划分;类图显示了类之间的关系;活动图则和流程图类似,用于显示人或对象的活动;顺序图和通信图类似,不同点在于强调的是对象间发送消息的顺序。
第 34 题
正则表达式1*(0|01)*表示的集合元素的特点是( )。
- (A) 长度为奇数的0、1串
- (B) 开始和结尾字符必须为1的0、1串
- (C) 串的长度为偶数的0、1串
- (D) 不包含子串011的0、1串
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
正规式(0|01)*描述的集合为{。,0, 01, 00,000, 001,010,0000,0101, 0100,
0001,……},串中出现01时,其后只能跟0而不能出现1,因此1 *(0|01)*表示的集合元素的特点是串中不包含子串011。
第 35 题
设某程序中定义了全局整型变量x和r,且函数f()的定义如下所示,则在语句“x = r*r +1 ;”中( )。
int f(int r)
{ int x;
x = r*r +1 ;
return x;
}
- (A) x和r均是全局变量
- (B) x是全局变量、r是形式参数
- (C) x是局部变量、r是形式参数
- (D) x是局部变量、r是全局变量
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题考查程序语言的基础知识。
在函数f的形式参数表中声明了r,且在函数中定义了变量小x,因此语言规定语句x = r*r +1;中引用的x和r都是函数中定义的局部量。
第 36 题
程序语言的大多数语法现象可用上下文无关文法描述。对于一个上下文无关文法G=(N,T,P,S),其中N是非终结符号的集合,T是终结符号的集合,P是产生式集合,S是开始符号。令集合V= N∪T,那么G所描述的语言是( )的集合。
- (A) 从S出发推导出的包含V中所有符号的串
- (B) 从S出发推导出的仅包含T中符号的串
- (C) N中所有符号组成的串
- (D) T中所有符号组成的串
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
本题考查程序语言的基础知识。
一个文法定义的语言是终结符号串的集合,这些终结符号串应能从文法的起始符号出发推导出来。
第 37 题
在数据库系统中,数据的完整性约束的建立需要通过数据库管理系统提供的( )语言来实现。
- (A) 数据定义
- (B) 数据操作
- (C) 数据查询
- (D) 数据控制
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查的是数据库系统中的基本概念。DBMS主要是实现对共享数据有效的组织、管理和存取,因此DBMS应具有数据定义、数据库操作、数据库运行管理、数据组织与存储管理和数据库的建立和维护等功能。其中,DBMS提供数据定义语言(Data Definition Language, DDL ),用户可以对数据库的结构进行描述,包括外模式、模式和内模式的定义;数据库的完整性定义;安全保密定义,如口令、级别和存取权限等。这些定义存储在数据字典中,是DBMS运行的基本依据。DBMS向用户提供数据操纵语言( Data Manipulation Language, DML ),实现对数据库中数据的基本操作,如检索、插入、修改和删除。DML分为两类:宿主型和自含型。所谓宿主型是指将DML语句嵌入某种主语言(如C, COBOL等)中使用;自含型是指可以单独使用DML语句,供用户交互使用。
总之,任何一个DBMS都应当提供给使用者建立数据库的功能,称为“数据库的定义”。在SQL标准中,是通过数据库定义语言来实现的。因此,应选择答案A。
第 38 题
若某个关系的主码为全码,则该主码应包含( )。
- (A) 单个属性
- (B) 两个属性
- (C) 多个属性
- (D) 全部属性
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是关系数据库系统中关系的键的荃本概念。全码(All-key)是指关系模型的所有属性组是这个关系模式的候选键。
第 39 题
建立一个供应商、零件数据库。其中“供应商”表S(Sno,Sname,Zip,City)分别表示:供应商代码、供应商名、供应商邮编、供应商所在城市,其函数依赖为:Sno→(Sname,Zip,City ),Zip→City。“供应商”表S属于( )。
- (A) 1NF
- (B) 2NF
- (C) 3NF
- (D) BCNF
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
本题考查的是范式的基础知识。“供应商”表S属于2NF,因为表S非主属性Sname, Zip, City不存在对键的部分函数依赖。但是,当2NF的主键是Sno,消除了非主属性对码的传递函数依赖.则称为3NF。“供应商”表S不属于3NF,因为存在传递依赖,即Sno-Zip, Zip-City。所以正确答案是B。
第 40 题
关系R、S如下图所示,可由( )基本的关系运算组成, =( )。
- (A) π、σ、×
- (B) -、σ、×
- (C) ∩、σ、×
- (D) π、σ、∩
- (A)
- (B)
- (C)
- (D)
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A],[D]]
- 试题解析:
第 41 题
若事务T1对数据A已加排它锁,那么其它事务对数据A( )。
- (A) 加共享锁成功,加排它锁失败
- (B) 加排它锁成功,加共享锁失败
- (C) 加共享锁、加排它锁都成功
- (D) 加共享锁、加排它锁都失败
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是数据库事务处理方面的基础知识。并发事务如果对数据读写时不加以控制,会破坏事务的隔离性和一致性。控制的手段就是加锁,在事务执行时限制其他事务对数据的读取。在并发控制中引入两种锁:排它锁< Exclusive Locks, X锁)和共享锁(Share Locks , S锁)。
排它锁又称为写锁,用于对数据进行写操作时进行锁定。如果事务T对数据A加上X锁后,就只允许事务T对数据A进行读取和修改,其他事务对数据A不能再加任何锁,从而也不能读取和修改数据A,直到事务T释放A上的锁。
共享锁又称为读锁,用于对数据进行读操作时进行锁定。如果事务T对数据A加上了S锁后,事务T就只能读数据A但不可以修改。其他事务可以再对数据A加S锁来读取,只要数据A上有S锁,任何事务都只能再对其加S锁读取而不能加X锁修改。因此,正确答案是D。
第 42 题
拓扑排序是指有向图中的所有顶点排成一个线性序列的过程,若在有向图中从顶点vi到vj有一条路径,则在该线性序列中,顶点vi必然在顶点vj之前。因此,若不能得到全部顶点的拓扑排序序列,则说明该有向图一定( )。
- (A) 包含回路
- (B) 是强连通图
- (C) 是完全图
- (D) 是有向树
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查图数据结构。
对有向图进行拓扑排序的方法如下:
(1)在AOV网中选择一个入度为0(没有前驱)的顶点且输出它。
(2)从网中删除该顶点及其与该顶点有关的所有边。
(3)重复上述两步,直至网中不存在入度为0的顶点为止。
执行的结果会有两种情况:一种是所有顶点己输出,此时整个拓扑排序完成,说明网中不存在回路;另一种是尚有未输出的顶点,剩余的顶点均有前驱顶点,表明网中存在回路,拓扑排序无法进行下去。
第 43 题
设栈S和队列Q的初始状态为空,元素按照a、b、c、d、e的次序进入栈S,当一个元素从栈中出来后立即进入队列Q。若队列的输出元素序列是c、d、b、a、e,则元素的出栈顺序是( ),栈S的容量至少为( )。
- (A) a-b-c-d-e
- (B) e-d-c-b-a
- (C) c-d-b-a-e
- (D) e-a-b-d-c
- (A) 2
- (B) 3
- (C) 4
- (D) 5
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[['C'],['B']]
- 试题解析:
本题考查栈和队列的墓本概念及运算。
栈是先进后出的线性表,而队列是先进先出的线性表。若队列的输出元素序列为c、d、b、 a、 e,则进入队列的元素序列也为C, d, b, a, e,这也是从栈中出来的元素序列。
若元素以a、 b、c、d、e的次序进入栈S且得到输出序列c、d、 b、 a、e,则操作系列为a入栈、b入栈、C入栈、C出栈、d入栈、d出栈、b出栈、a出栈、e入栈、e出栈。第一个出栈的元素为c,则c出栈时元素a和b尚在栈中,如下图所示。
栈S的容量至少为3。
第 44 题
对于n(n≥0)个元素构成的线性序列L,在( )时适合采用链式存储结构。
- (A) 需要频繁修改L中元素的值
- (B) 需要频繁地对L进行随机查找
- (C) 需要频繁地对L进行删除和插入操作
- (D) 要求L存储密度高
答案与解析
- 试题难度:容易
- 知识点:
- 试题答案:[[C]]
- 试题解析:
本题考查线性表的链式存储结构。
链表的结点中需要存储结点的前驱(和后继)和结点的指针信息,因此,与顺序存储结构相比较,线性表采用链表存储时存储密度比较低。访问元素时,在链表存储结构上只能进行顺序访问,而不能随机访问。链表的优点是可以根据数据规模申请存储空间,插入和删除元素时只需要修改指针,不需要移动表中的其他元素。
第 45 题
对于二叉查找树(Binary Search Tree),若其左子树非空,则左子树上所有结点的值均小于根结点的值;若其右子树非空,则右子树上所有结点的值均大于根结点的值;左、右子树本身就是两棵二叉查找树。因此,对任意一棵二叉查找树进行( )遍历可以得到一个结点元素的递增序列。在具有n个结点的二叉查找树上进行查找运算,最坏情况下的算法复杂度为( )。
- (A) 先序
- (B) 中序
- (C) 后序
- (D) 层序
- (A) O(n2)
- (B) O (nlog2n)
- (C) O(log2n)
- (D) O(n)
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B],[D]]
- 试题解析:
本题考查动态查找表二叉查找树(二叉排序树)。
中序遍历二叉树的过程为:若二叉树非空,则先中序遍历左子树,然后访问根结点,最后中序遍历右子树。根据二叉查找树的定义,显然,对二叉查找树进行中序遍历,得到结点元素的递增序列。
在二叉查找树上进行查找的过程为:若二叉查找树非空,将给定值与根结点的关键字值相比较,若相等,则查找成功;若不等,则当根结点的关键字值大于给定值时,到根的左子树中进行查找。否则到根的右子树中进行查找。若找到,则查找过程是走了一条从树根到所找到结点的路径;否则,查找过程终止于一棵空树。因此,在具有n个结点的二叉查找树上进行查找的算法复杂度与树的高度同阶。
由于一棵二叉查找树的形态完全由输入序列决定,所以在输入序列己经有序的情况下,所构造的二叉查找树是一棵单枝树。例如,由序列(45, 30, 50)和序列(30, 45,50)构造的二叉查找树如图(a)、(b)所示。
第 46 题
迪杰斯特拉(Dijkstra)算法按照路径长度递增的方式求解单源点最短路径问题,该算法运用了( )算法策略。
- (A) 贪心
- (B) 分而治之
- (C) 动态规划
- (D) 试探+回溯
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查最短路径问题。
贪心算法通过一系列的选择得到问题的解。它所做出的每一次选择是当前状态下局部最优选择,即贪心选择。
分治法的基本思想是把大问题分解成一些较小的问题,然后由小问题的解方便地构造出大问题的解。
动态规划策略设计算法利用问题的最优子结构性质,以自底向上的方式递归地从子问题的最优解逐步构造出整个问题的最优解。
回溯法也称为试探法,该方法首先暂时放弃关于问题规模大小的限制,并将问题的候选解按某种顺序逐一枚举和检验。
迪杰斯特拉(Dijkstra)提出的按路径长度递增的次序产生最短路径的算法,其思想是把网中所有的顶点分成两个集合S和T、 S集合的初态只包含顶点v0,T集合的初态为网中除v0之外的所有顶点。凡以v0为源点,己经确定了最短路径的终点并入S集合中;顶点集合T则是尚未确定最短路径的顶点的集合。按各顶点与v0间最短路径长度递增的次序,逐个把T集合中的顶点加入到S集合中去,使得从v0到S集合中各顶点的路径长度始终不大于从v0到T集合中各顶点的路径长度。
从迪杰斯特拉算法求最短路径的过程可知,其算法策略属于贪心策略。
第 47 题
关于算法与数据结构的关系,( )是正确的。
- (A) 算法的实现依赖于数据结构的设计
- (B) 算法的效率与数据结构无关
- (C) 数据结构越复杂,算法的效率越高
- (D) 数据结构越简单,算法的效率越高
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查数据结构与算法的关系。
算法(Algorithn)是对特定问题求解步骤的一种描述,它是指令的有限序列,其中每一条指令表示一个或多个操作。
一个算法具有5个重要特性:有穷性、确定性、可行性、输入和输出。
数据结构讨论“描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中如何表示和实现”,包括数据的逻辑结构、物理结构和基本运算。
设计算法步骤时可以不考虑数据结构,但算法在计算机上与采用的数据结构密切相关。
第 48 题
若一个问题既可以用迭代方式也可以用递归方式求解,则( )方法具有更高的时空效率。
- (A) 迭代
- (B) 递归
- (C) 先递归后迭代
- (D) 先迭代后递归
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[A]]
- 试题解析:
本题考查迭代和递归算法。
递归是设计和描述算法的一种有力的工具。
能采用递归描述的算法通常有这样的特征:为求解规模为N的问题,设法将它分解成一些规模较小的问题,然后从这些小问题的解方便地构造出大问题的解,并且这些规模较小的问题也能采用同样的分解和综合方法,分解成规模更小的问题,并从这些更小问题的解构造出规模稍大问题的解。特别地,当规模N=1时,能直接得到解。
由于递归函数执行过程中引起一系列的函数调用和返回,因此需要较多的时间开销(控制转移和存储空间管理操作所需的时间)及空间开销(每一次调用时为函数中的形式参数和自动局部变量分配存储空间等),因此与实现相同功能的非递归函数相比,运行效率较低。
第 49 题
在FTP协议中,控制连接是由( )主动建立的。
- (A) 服务器端
- (B) 客户端
- (C) 操作系统
- (D) 服务提供商
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
文件传输协议FTP利用TCP连接在客户机和服务器之间上传和下载文件。FTP协议占用了两个TCP端口,FTP服务器监听21号端口,准备接受用户的连接请求。当用户访问FTP服务器时便主动与服务器的21号端口建立控制连接。如果用户要求下载文件,则必须等待服务器的20号端口主动发出建立数据连接的请求,文件传输完成后数据连接随之释放。在客户端看来,这种处理方式被叫做“被动式FTP ”。 Windows系统中默认的就是这种处理方式。由于有的防火墙阻止由外向内主动发起的连接请求,所以FTP数据连接可能由于防火墙的过滤而无法建立。为此有人发明了一种主动式FTP,即数据连接也是由客户端主动请求建立的,但是在服务器中接收数据连接的就不一定是20号端口了。
第 50 题
网页中代码<input type=text name="foo" size=20>定义了( )。
- (A) 一个单选框
- (B) 一个单行文本输入框
- (C) 一个提交按纽
- (D) 一个使用图像的提交按纽
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[B]]
- 试题解析:
这是一段HTML(文本标记语言)代码,input表示输入标记,type表示输入框的类型关键字,text表示单行文本框,name是给单行文本框取名,size表示文本框的大小。
第 51 题
电子邮件应用程序利用POP3协议( )。
- (A) 创建邮件
- (B) 加密邮件
- (C) 发送邮件
- (D) 接收邮件
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D]]
- 试题解析:
本题考查的是电子邮件协议的基本知识。
常见的电子邮件协议包括SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP( Internet邮件访问协议)。这几种协议都是由TCP/IP协议族定义的。SMTP < Simple Mail Transfer Protocol )主要负责底层的邮件系统如何将邮件从一台机器传至另外一台机器。
第 52 题
在进行金融业务系统的网络设计时,应该优先考虑( )原则。在进行企业网络的需求分析时,应该首先进行( )。
- (A) 先进性
- (B) 开放性
- (C) 经济性
- (D) 高可用性
- (A) 企业应用分析
- (B) 网络流量分析
- (C) 外部通信环境调研
- (D) 数据流向图分析
答案与解析
- 试题难度:一般
- 知识点:
- 试题答案:[[D],[A]]
- 试题解析:
网络设计一般要遵循一些原则,包括先进性、开放性、经济性和高可用性。
先进性:是指建设一个现代化的网络系统,应尽可能采用先进而成熟的技术,应在一段时间内保证其主流地位。但是太新的技术也有不足之处,一是有可能不成熟,二是标准可能还不完备、不统一,三是价格高,四是可能技术支持力量不够。
开放性:是指采用国际通用的标准和技术获得良好的开放性,是网络互连互通的基础。
经济性:是指在满足需求的基础上,应该尽量节省费用。
高可用性:是指系统要有很高的平均无故障时间和尽可能低的平均故障率,一般需要采取热备份、冗余等技术。
金融系统涉及银行、众多储户的资产信息,数据重要、敏感,数据量庞大,必须要保证数据的绝对安全,同时要保证系统小的响应时间、很高的服务成功率,而且服务要完整、不间断,故障恢复能力强,整个系统要具有非常高的可用性和可靠性,并不追求采用先进的技术。另外,一般金融系统都是封闭运行的,开放性也不需要放在优先考虑的地位。因此在进行有关金融系统的网络设计时,高可用性是首要考虑的原则。
在进行企业网络的需求分析时应该首先进行企业的业务和应用分析,因为网络建设是企业应用的基础,网络系统要向企业的应用系统提供良好的服务,企业的应用需求是设计网络系统的重要依据。
第 53 题
The Rational Unified Process (RUP) is a software engineering process, which captures many of best practices in modern software development.The notions of( )and scenarios have been proven to be an excellent way to capture function requirements.RUP can be described in two dimensions – time and content.In the time dimension, the software lifecycle is broken into cycles.Each cycle is divided into four consecutive( )which is concluded with a well-defined( )and can be further broken down into( )– a complete development loop resulting in a release of an executable product, a subset of the final product under development, which grows incrementally to become the final system.The content structure refers to the disciplines, which group( )logically by nature.
- (A) artifacts
- (B) use-cases
- (C) actors
- (D) workers
- (A) orientations
- (B) views
- (C) aspects
- (D) phases
- (A) milestone
- (B) end-mark
- (C) measure
- (D) criteria
- (A) rounds
- (B) loops
- (C) iterations
- (D) circularities
- (A) functions
- (B) workflows
- (C) actions
- (D) activities
答案与解析
- 试题难度:较难
- 知识点:
- 试题答案:[[B],[D],[A],[C],[D]]
- 试题解析:
RUP ( Rational Unified Process)是一种软件工程过程产品,它吸取了现代软件开发中许多成功的实践。事实证明,采用用例(use-cases)和剧情(scenarios)捕获目标系统的功能需求是一种较好的办法。可以采用二维模型来描述RUP—时间和内容。从时间维来看,软件生存周期被划分为不同的周期(cycles)。每个周期又被划分为4个连续的阶段(phase),每个阶段都包含一个妥善定义的里程碑(milestone );每个阶段还可以被进一步划分为若干轮迭代(iterations)。一次迭代是一次完整的开发过程.每次次迭代结束时会发布一个可执行的产品,这个产品是正在开发的软件系统的一个子集,它会逐渐扩展为最终系统。内容结构指的是一些将活动(activities)组织在一起的、天然存在的规则。