![2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)试卷号60_第1页](http://file4.renrendoc.com/view/d01efa0514e85fb083603288030c3327/d01efa0514e85fb083603288030c33271.gif)
![2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)试卷号60_第2页](http://file4.renrendoc.com/view/d01efa0514e85fb083603288030c3327/d01efa0514e85fb083603288030c33272.gif)
![2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)试卷号60_第3页](http://file4.renrendoc.com/view/d01efa0514e85fb083603288030c3327/d01efa0514e85fb083603288030c33273.gif)
![2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)试卷号60_第4页](http://file4.renrendoc.com/view/d01efa0514e85fb083603288030c3327/d01efa0514e85fb083603288030c33274.gif)
![2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)试卷号60_第5页](http://file4.renrendoc.com/view/d01efa0514e85fb083603288030c3327/d01efa0514e85fb083603288030c33275.gif)
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
住在富人区的她2022年职业考证-软考-软件设计师考试名师押题精选卷I(带答案详解)(图片可根据实际调整大小)题型12345总分得分一.综合题(共50题)1.单选题
(
)是一种需要通过周期性刷新来保持数据的存储器件。
问题1选项
A.SRAM
B.DRAM
C.FLASH
D.EEPROM
【答案】B
【解析】DRAM:动态随机存取器存储器,又叫主存,是与CPU直接交换数据的内部存储器。它可以随时读写(刷新时除外),而且速度很快,通常作为操作系统或其他正在运行中的程序的临时数据存储媒介,通过周期性刷新来保持数据的存储器件,断电丢失。
SRAM:静态随机存取器存储器,静态随机存取存储器是随机存取存储器的一种。所谓的“静态”,是指这种存储器只要保持通电,里面储存的数据就可以恒常保持。
FLASH:闪存,特性介于EPROM和EEPROM之间,类似于EEPROM,也可以使用电信号进行信息的擦除操作。整块闪存可以在数秒内删除。
EEPROM:电擦除可编程的只读存储器,于EPROM相似,EEPROM中的内容既可以读出,也可以进行改写。
2.案例题
【说明】
希尔排序算法又称最小增量排序算法,其基本思想是:
步骤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
voidshellsort(intdata[],intn){
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
【问题1】(8分)
根据说明和c代码,填充c代码中的空(1)~(4)。
【问题2】(4分)
根据说明和c代码,该算法的时间复杂度(5)O(n2)(小于、等于或大于)。该算法是否稳定(6)(是或否)。
【问题3】(3分)
对数组(15、9、7、8、20、-1、4)用希尔排序方法进行排序,经过第一趟排序后得到的数组为(7)。
【答案】【问题1】(8分)
(1)k=k/2
(2)k>1
(3)data[k]【问题3】(3分)
(7)(4,9,-1,8,20,7,15)
【解析】问题1:
希尔排序是一种经典的高效插入类排序算法。不稳定的排序算法,将每个步长划分为多个不连续的子序列,对每个子序列再次采用直接插入排序算法。
如对某数组A=(a1,a2,a3...a10),在某趟排序时,若delta=3,则将A分成三个子序列,A1=(a1,a4,a7,a10),A2=(a2,a5,a8),A3=(a3,a6,a9),然后分别在原位置上对A1、A2和A3进行直接插入排序处理。最后一趟排序中,delta=1,这样可以确保输出序列是有序的。delta序列是希尔排序算法在具体实现的过程中定义的,本题在题干中已经给出,delta1=n/2,后面的每个delta是前面的1/2,最后一个deltak=1。根据题干,很容易得到空(1)为k=k/2,空(2)填k>1。
接下来的代码段是根据delta值进行每一趟的排序,每趟排序是对不连续的每个子序列进行插入排序,因此,空(3)填data[k]问题2:
希尔排序算法是一种不稳定的排序算法,时间复杂度约在O(n^1.3)。
问题3:
对于数组(15、9、7、8、20、-1、4)用希尔排序方法进行排序,n=7,根据题干说明delta=n/2=3,A1(15,8,4),A2(9,20),A3(7,-1),每个子序列排序后得到A1(4,8,15),A2(9,20),A3(-1,7),还原得到(4,9,-1,8,20,7,15)
3.单选题
以下可以有效防治计算机病毒的策略是(
)。
问题1选项
A.部署防火墙
B.部署入侵检测系统
C.安装并及时升级防病毒软件
D.定期备份数据文件
【答案】C
【解析】部署防火墙:防火墙技术是通过有机结合各类用于安全管理与筛选的软件和硬件设备,帮助计算机网络于其内、外网之间构建一道相对隔绝的保护屏障,以保护用户资料与信息安全性的一种技术,并不能有效的防范病毒。
部署入侵检测系统:入侵检测系统(intrusiondetectionsystem,简称“IDS”)是一种对网络传输进行即时监视,在发现可疑传输时发出警报或者采取主动反应措施的网络安全设备。是对一种网络传输的监视技术,并不能有效的防范病毒。
安装并及时升级防病毒软件:针对于防病毒软件本身就是防范病毒最有效最直接的方式。
定期备份数据文件:数据备份是容灾的基础,是指为防止系统出现操作失误或系统故障导致数据丢失,而将全部或部分数据集合从应用主机的硬盘或阵列复制到其它的存储介质的过程。是为了防止系统数据流失,不能有效的防范病毒。
4.单选题
以下关于闪存(FlashMemory)的叙述中,错误的是(
)。
问题1选项
A.掉电后信息不会丢失,属于非易失性存储器
B.以块为单位进行删除操作
C.采用随机访问方式,常用来代替主存
D.在嵌入式系统中可以用Flash来代替ROM存储器
【答案】C
【解析】闪存(FlashMemory)是一种长寿命的非易失性(在断电情况下仍能保持所存储的数据信息)的存储器,数据删除不是以单个的字节为单位而是以固定的区块为单位,区块大小一般为256KB到20MB。
闪存是电子可擦除只读存储器(EEPROM)的变种,EEPROM与闪存不同的是,它能在字节水平上进行删除和重写而不是整个芯片擦写,这样闪存就比EEPROM的更新速度快。由于其断电时仍能保存数据,闪存通常被用来保存设置信息。
闪存不像RAM(随机存取存储器)一样以字节为单位改写数据,因此不能取代RAM,也不能替换主存,因此C选项错误。但是在嵌入式中,可以用闪存代替ROM存储器。
5.单选题
用pip安装numpy模块的命令为()。
问题1选项
A.pipnumpy
B.pipinstallnumpy
C.installnumpy
D.importnum
【答案】B
【解析】本题考查的是命令相关内容。
只有B选项符合命令中安装模块的语法,本题选择B选项。
6.单选题
软件详细设计阶段的主要任务不包括(
)。
问题1选项
A.数据结构设计
B.算法设计
C.模块之间的接口设计
D.数据库的物理设计
【答案】C
【解析】软件详细设计阶段的主要任务包括:对模块内的数据结构进行设计;对数据库进行物理设计;对每个模块进行详细的算法设计;代码设计、输入/输出设计、用户界面设计等其他设计。
软件概要设计阶段的主要任务包括
(1)软件系统总体结构设计,将系统划分成模块;确定每个模块的功能;确定模块之间的调用关系;确定模块之间的接口,即模块之间传递的信息;评价模块结构的质量。
(2)数据结构及数据库设计。
本题A、B、D属于详细设计阶段的任务,C选项属于概要设计阶段的任务,本题选择C选项。
7.案例题
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
层叠菜单是窗口风格的软件系统中经常采用的一种系统功能组织方式。层叠菜单(如图6-1示例)中包含的可能是一个菜单项(直接对应某个功能),也可能是一个子菜单,现在采用组合(composite)设计模式实现层叠菜单,得到如图6-2所示的类图
层叠菜单(如图6-1示例)暂缺
图6-2
类图
importjava.util.*;
abstractclassMenuComponent{//构成层叠菜单的元素
(1)Stringname;//菜单项或子菜单名称
publicviodprintName(){System.out.println(name);}
public(2);
publicabstractbooleanremoveMenuElement(MenuComponentelement);
public(3);
}
classMenuItemextendsMenuComponent{
publicMenuItem(Stringname){=name;}
publicbooleanaddMenuElement(MemuComponentelement){returnfalse;}
publicbooleanremoveMenuElement(MenuComponentelement){returnfalse;}
publicListgetElement(){returnnull;}
}
classMenuextendsMemuComponent{
private(4);
publicMenu(Stringname){
=name;
this.elementList=newArrayList;
}
publicbooleanaddMenuElement(MenuComponentelement){
returnelementList.add(element);
}
publicbooleanremoveMenuElement(MenuComponentelement){
returnelementList.remove(element);
}
publicListgetElement(){returnelementList;}
}
classCompositeTest{
publicstaticvoidmain(String[]args){
MenuComponentmainMenu=newMenu(“AB”);
//此处字符不清晰,以“AB”代替原文
MenuComponentsubMenu=newMenu(“Chart”);
MenuComponentelement=newMenuItem(“OnThisSheet”);
(5);
subMenu.addMenuElement(element);
printMenus(mainMenu);
}
privatestaticvoidprintMenus(MenuComponentifile){
ifile.printName();
Listchildren=ifile.getElement();
if(children==null)return;//打印
for(MenuComponentelement;children){
printMenus(element);
}
}
}
【答案】(1)protected
(2)abstractbooleanaddMenuElement(MemuComponentelement)
(3)abstractListgetElement()
(4)ArrayListelementList
(5)mainMenu.addMenuElement(subMenu)
【解析】本题是典型的组合模式应用。
首先根据类图中name标注的为#(+表示public,-表示private,#表示protected),第(1)空对name的修饰应该是protected。
然后根据抽象类和实现类的对应关系,可以补充第(2)(3)空,这两处缺失的方法根据下文代码进行补充,注意方法名必须用abstract修饰,并且注意抽象方法的写法没有具体方法体。其中第(2)空填写abstractbooleanaddMenuElement(MemuComponentelement),第(3)空填写abstractListgetElement()。
第(4)空缺失了一个属性,此时根据下文的同名构造函数会发现,此处传参给了以及this.elementList,name可以根据父类继承使用,而elementList需要定义,因此此处缺失的参数是elementList,类型根据后面的赋值类型进行定义,即第(4)空填写ArrayListelementList。
第(5)空是对组合模式的应用拼装,根据下文可知打印需要调用mainMenu对象,而此时该对象是独立的,需要与其他菜单进行拼装,下文中subMenu拼装了element,此处需要将subMenu拼装到mainMenu,即第(5)空填写mainMenu.addMenuElement(subMenu)。
8.单选题
某Python程序中定义了X=[1,2],那么X*2的值为()。
问题1选项
A.[1,2,1,2]
B.[1,1,2,2]
C.[2,4]
D.出错
【答案】A
【解析】本题考查的是Python基础语法。
X=[1,2]表示List结构,*2表示重复2次,运算结果为[1,2,1,2]。
9.单选题
在网络系统设计时,不可能使所有设计目标都能达到最优,下列措施中最为合理的是(
)。
问题1选项
A.尽量让最低建设成本目标达到最优
B.尽让最短的故障时间达到最优
C.尽量让最大的安全性目标达到最优
D.尽量让优先级较高的目标达到最优
【答案】B
【解析】暂无。
10.单选题
防火墙通常分为内网、外网和DMZ三个区域,按照受保护程度,从低到高正确的排列次序为()
问题1选项
A.内网、外网和DMZ
B.外网、DMZ和内网
C.DMZ、内网和外网
D.内网、DMZ和外网
【答案】B
【解析】考查应用级关于屏蔽子网的防火墙。
在一个用路由器连接的局域网中,我们可以将网络划分为三个区域:安全级别最高的LANArea(内网),安全级别中等的DMZ区域和安全级别最低的Internet区域(外网)。三个区域因担负不同的任务而拥有不同的访问策略。我们在配置一个拥有DMZ区的网络的时候通常定义以下的访问控制策略以实现DMZ区的屏障功能。
11.单选题
浏览器开启无痕浏览模式时,()仍然会被保存。
问题1选项
A.浏览历史
B.搜索历史
C.下载的文件
D.临时文件
【答案】C
【解析】本题考查的是浏览器应用。
在浏览器开启无痕浏览模式时,浏览历史、搜索历史和临时文件都不会被保存,只有下载的文件可以被保存。本题选择C选项。
12.单选题
下图是一个软件项目的活动图,其中顶点表示项目里程碑,连接顶点的边表示活动,边上的权重表示完成该活动所需要的时间(天),则活动(
)不在关键路径上。活动BI和EG的松弛时间分别是(
)。
问题1选项
A.BD
B.BI
C.GH
D.KL
问题2选项
A.0和1
B.1和0
C.0和2
D.2和0
【答案】第1题:B
第2题:B
【解析】考查项目管理计算问题。
对于关键路径有两条分别是:ABDIJKL和AEGHKL两条关键路径,长度为20.
针对第一问,不在关键路径上的活动是BI,其余的BD,GH,KL都在关键路径上。
针对第二问,要求BI和EG的松弛时间,BI活动通过的路径有两条ABIJKL和ABIJL,其中两条路径的长度都为19,(如果有两条不同的路径应该选择最大的一条),用关键路径减去该路径的长度20-19=1,表示该活动的松弛时间。
活动EG位于该关键路径AEGHKL上,没办法延误,即松弛时间为0
13.单选题
设关系模式R(U,F),U={A1,A2,A3,A4},函数依赖集F={A1→A2,A1→A3,A2→A4},关系R的候选码是(
)。下列结论错误的是(
)。
问题1选项
A.A1
B.A2
C.A1A2
D.A1A3
问题2选项
A.A1→A2A3为F所蕴涵
B.A1->A4为F所蕴涵
C.A1A2→A4为F所蕴涵
D.A2→A3为F所蕴涵
【答案】第1题:A
第2题:D
【解析】本题考查候选键的求法和函数依赖的判断问题。
第一问求候选键,采用图示法,能够遍历所有属性的即为候选键,首先应该找出入度为0的节点,只有A1,如果入度为0的节点,遍历不了所有节点,那么需要加入一些中间结点(既有入度又有出度)的结点进行遍历,以它们的组合键作为候选键。
根据方法,找到入度为0的节点A1,可以发现第一步能够通过A1决定所有属性A2(A1→A2),A3(A1→A3),A4(A1→A2,A2→A4,传递律得A1→A4)
得出A1为候选键。
第二问考查AmStrong公理进行求解相关:
A.A1→A2A3为F所蕴涵,通过A1→A2,A1→A3,得出A1→A2A3(合并规则)
B.A1->A4为F所蕴涵,通过A1→A2,A2→A4,得出A1→A4(传递律)
C.A1A2→A4为F所蕴涵,通过A2→A4,A1→A4(传递律),那么两者的结合键为A1A2→A4自然能被F所蕴涵。
D.A2→A3为F所蕴涵,不能推导得出。
14.单选题
给定学生关系S(学号,姓名,学院名,电话,家庭住址)、课程关系C(课程号,课程名,选修课程号)、选课关系SC(学号,课程号,成绩)。查询“张晋”选修了“市场营销”课程的学号、学生名、学院名、成绩的关系代数表达式为:π1,2,3,7(
π
1,2,3(
))∞(
)))。
问题1选项
A.σ2=张晋(S)
B.σ2='张晋'(S)
C.σ2=张晋(SC)
D.σ2='张晋'(SC)
问题2选项
A.π2,3(σ2='市场营销'(C))∞SC
B.π2,3(σ2=市场营销(SC))∞C
C.π1,2(σ2='市场营销'(C)∞SC
D.π1,2(σ2=市场营销(SC))∞C
【答案】第1题:B
第2题:A
【解析】本题考查数据关系代数相关问题。
根据题干要求,查询“张晋”选修了“市场营销”课程的学号、学生名、学院名、成绩的关系代数表达式
给出以下三个关系表:
学生关系S(学号,姓名,学院名,电话,家庭住址)
课程关系C(课程号,课程名选修课程号)
选课关系SC(学号,课程号,成绩)
根据题干的描述和选项的结合来看,这个表达式应该是由C和SC先进行自然连接,然后S再与C和SC先自然连接后的关系再进行自然连接。
针对与表达式π1,2,3,7(π
1,2,3(
))∞(
)))。
内层表达式里面进行自然连接,对于第一空,
π
1,2,3,投影1,2,3列,应该来源于题干描述的来着S学生关系的张晋,正确表达应该是σ2='张晋'(S),人名字符串需要加引号。对于第二空来说,应该是选秀课程号的“市场营销”的C表与选课关的SC表进行自然连接,首先排除B、D,对于A,C的区别再于两者的投影不同,A选项投影C表的2,3列即(课程名,选修课程号),而C选项投影C表的1,2列(课程号,课程名),针对与题干来看,市场营销是选修课程,所以投影选修号比较合适一点。正确表达为π2,3(σ2='市场营销'(C))∞SC。
最后两层投影得到的表为A(学号,姓名,学院名,课程名,选修课程号,课程号,成绩),对于外层的投影1,2,3,7列恰好是学号,姓名,学院名,成绩
15.单选题
采用三级模式结构的数据库系统中,如果对一个表创建聚簇索引,那么改变的是数据库的()。
问题1选项
A.外模式
B.模式
C.内模式
D.用户模式
【答案】C
【解析】本题考查数据库三级模式两级映射。
对于三级模式,分为外模式,模式和内模式。其中外模式对应视图级别,是用户与数据库系统的接口,是用户用到那部分数据的描述,比如说:用户视图;对于模式而言,又叫概念模式,对于表级,是数据库中全部数据的逻辑结构和特质的描述,由若干个概念记录类型组成,只涉及类型的描述,不涉及具体的值;而对于内模式而言,又叫存储模式,对应文件级,是数据物理结构和存储方式的描述,是数据在数据库内部表示的表示方法,定义所有内部的记录类型,索引和文件的组织方式,以及数据控制方面的细节。例如:B树结构存储,Hash方法存储,聚簇索引等等。
16.单选题
进程P有5个页面,页号为0-4,页面变换表及状态位、访问位和修改位的含义如下图所示,若系统给进程P分配了3个存储块,当访问的页面3不在内存时,应该淘汰表中页号为(
)的页面
问题1选项
A.0
B.1
C.2
D.4
【答案】A
【解析】被淘汰的页面首先必须在内存,也就是在0、2、4页面中进行选择。
优先淘汰访问位为0的页面,此时0、2、4页面访问位都为1,无法判断。
进一步淘汰的是修改位为0的页面,此时符合要求淘汰的是0号页面,选择A选项。
17.单选题
在CPU中,用(
)给出将要执行的下一条指令在内存中的地址。
问题1选项
A.程序计数器
B.指令寄存器
C.主存地址寄存器
D.状态条件寄存器
【答案】A
【解析】A选项程序计数器PC:存储下一条要执行指令的地址。本题选择A选项。
B选项指令寄存器IR:存储即将执行的指令。
C选项主存地址寄存器MAR:用来保存当前CPU所访问的内存单元的地址。
D选项状态条件寄存器PSW:存状态标志与控制标志。
18.单选题
对高级程序语言进行编译的过程中,使用(
)来记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成。
问题1选项
A.决策表
B.符号表
C.广义表
D.索引表.
【答案】B
【解析】考查分析语义分析阶段相关问题。
语义分析阶段主要是分析各语法结构的含义,检查源程序是否包含静态语义错误,并收集类型信息提供后面的代码生成阶段使用。
在确认源程序的语法和语义后,可以对其进行翻译并给出源程序的内部表示。对于声明语句,需要记录所遇到的符号的信息,所以应该进行符号表的填查工作,用来记录源程序中各个符号的必要信息,以辅助语义的正确性检查和代码生成。
至于决策表是用于测试的,广义表是针对数据结构的表示,索引表是数据库中指示逻辑和物理记录对应的关系。
19.单选题
在软件设计阶段进行模块划分时,一个模块的()。
问题1选项
A.控制范围应该在其作用范围之内
B.作用范围应该在其控制范围之内
C.作用范围与控制范围互不包含
D.作用范围与控制范围不受任何限制
【答案】B
【解析】本题是对模块设计原则的考查。
模块控制域:这个模块本身以及所有直接或间接从属于它的模块的集合。
模块作用域:指受该模块内一个判定所影响的所有模块的集合。
模块的作用域应该在控制域范围之内,本题选择B选项。
20.单选题
下列不属于计算机病毒的是()。
问题1选项
A.永恒之蓝
B.蠕虫
C.特洛伊木马
D.DDOS
【答案】D
【解析】本题考查的是网络威胁相关内容。
在本题中将木马也归于病毒一类了。
DDoS指的是分布式拒绝服务攻击,不属于计算机病毒与木马,其他选项都属于计算机病毒或木马,本题选择D选项。
21.单选题
SQL注入是常见的web攻击,以下不能够有效防御SQL注入的手段是()。
问题1选项
A.对用户输入做关键字过滤
B.部署Web应用防火墙进行防护
C.部署入侵检测系统阻断攻击
D.定期扫描系统漏洞并及时修复
【答案】C
【解析】本题考查的是SQL注入攻击相关内容。对用户输入做关键字过滤、Web应用防火墙、定期扫描系统漏洞并及时修复都可以有效防御SQL注入攻击,入侵检测系统无法防御SQL注入。本题选择C选项。
22.单选题
AES是一种()算法。
问题1选项
A.公钥加密
B.流密码
C.分组加密
D.消息摘要
【答案】C
【解析】AES是一个迭代的、对称密钥分组的密码,它可以使用128、192和256位密钥。并且使用128位分组加密和解密数据。
23.单选题
根据《计算机软件保护条例》的规定,对软件著作权的保护不包括(
)。
问题1选项
A.目标程序
B.软件文档
C.源程序
D.开发软件所有的操作方法
【答案】D
【解析】《计算机软件保护条例》保护的是软件程序以及文档,其中软件程序包括源程序和目标程序。
开发软件所用的思想、处理过程、操作方法或者数学概念不受软件著作权保护。本题选择D选项。
24.单选题
IPv6地址长度为(
)bit。
问题1选项
A.16
B.32
C.64
D.128
【答案】D
【解析】本题考查IPv6的基本概念。IPv6地址由128位二进制表示。
25.单选题
归并排序算法在排序过程中,将待排序数组分为两个大小相同的子数组,分别对两个子数组采用归并排序算法进行排序,排好序的两个子数组采用时间复杂度为0(n)的过程合并为一个大数组。根据上述描述,归并排序算法采用了(
)算法设计策略。归并排序算法的最好和最坏情况下的时间复杂度为(
)。
问题1选项
A.分治
B.动态规划
C.贪心
D.回溯
问题2选项
A.
B.
C.
D.
【答案】第1题:A
第2题:C
【解析】本题考查归并排序相关算法。
归并排序(MergeSort)是建立在归并操作上的一种有效,稳定的排序算法,该算法是采用分治法(DivideandConquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为二路归并。归并排序是运用分治法相关策略,其时间复杂度是由外层的n循环,与内层的归并过程log2n结合起来得到O(nlgn),归并排序没有所谓的最好和最坏排序算法,都为O(nlgn)
26.单选题
以下关于中断方式与DMA方式的叙述中,正确的是(
)。
问题1选项
A.中断方式与DMA方式都可实现外设与CPU之间的并行在工作
B.程序中断方式和DMA方式在数据传输过程中都不需要CPU的干预
C.采用DMA方式传输数据的速度比程序中断方式的速度慢
D.程序中断方式和DMA方式都不需要CPU保护现场
【答案】A
【解析】输入/输出技术的三种方式:
直接查询控制:有无条件传送和程序查询方式,都需要通过CPU执行程序来查询外设的状态,判断外设是否准备好接收数据或准备好了向CPU输入的数据。在这种情况下CPU不做别的事情,只是不停地对外设的状态进行查询。
中断方式:当I/O系统与外设交换数据时,CPU无须等待也不必查询I/O的状态,而可以抽身来处理其他任务。当I/O系统准备好以后,则发出中断请求信号通知CPU,CPU接到中断请求信号后,保存正在执行的程序的现场,转入I/O中断服务程序的执行,完成于I/O系统的数据交换,然后再返回被打断的程序继续执行。与程序控制方式相比,中断方式因为CPU无需等待而提高了效率。
DMA:直接寄存器存取方式,是指数据在内存与I/O设备间的直接成块传送,即在内存与I/O设备间传送一个数据块的过程中,不需要CPU的任何干涉,只需要CPU正在过程开始启动与过程结束时的处理,实际操作由DMA硬件直接执行完成。
27.单选题
二叉树的高度是指其层数,空二叉树的高度为0,仅有根结点的二叉树高度为1,若某二叉树中共有1024个结点,则该二叉树的高度是整数区间(
)中的任一值。
问题1选项
A.(10,1024)
B.[10,1024]
C.(11,1024)
D.[11,1024]
【答案】D
【解析】本题考查关于二叉树的构造问题。
根据题干描述,空二叉树的高度为0,仅有根结点的二叉树高度为1,当若某二叉树中共有1024个结点,求其取值范围?
我们不妨求出取值范围的极限值,当1024个结点都为根结点的时候,表示1024个二叉树高度为1,高度累计为1024,区间能够取到1024,属于闭区间,排除A,C
再求出其最小值的情况,最小值应该是按照满二叉树进行排列,对于二叉树的规律如下:第一层的结点树2^0=1,第二层2^1=2,第3层2^2=4,依次类推。
对于1024而言,2^10=1024,所以我们不能取到11层,应该先到第10层2^9=512,此时10层共累计的节点有:2^0+2^1+...+2^9=1023,共有1024还缺少1个结点,只能存放到第11层,第11层仅有1个结点,但是它的层次已经到了11层,所以能取到11,属于闭区间,排除B选项,故表达式取值范围应该是[11,1024]。
28.单选题
绘制分层数据流图(DFD)时需要注意的问题中,不包括()。
问题1选项
A.给图中的每个数据流、加工、数据存储和外部实体命名
B.图中要表示出控制流
C.一个加工不适合有过多的数据流
D.分解尽可能均匀
【答案】B
【解析】绘制分层数据流图,应该严格遵循父子图平衡原则。这就规定了不能出现黑洞、灰洞和奇迹的三种状况,分解子图尽可能细致一些。
所以对于:给图中的每个数据流、加工、数据存储和外部实体命名、一个加工不适合有过多的数据流、分解尽可能均匀都是需要注意的。
仅有B选项表示图中要表示出控制流不符合,在分层数据流图并没有强调过需要表示出控制流。
29.单选题
进程P1、P2、P3、P4、P5和P6的前趋图如下所示。用PV操作控制这6个进程之间同步与互斥的程序如下,程序中的空①和空②处应分别为
(
)
,空③和空④处应分别为
(
)
,空⑤和空⑥处应公别为(
)
问题1选项
A.V(S1)和P(S2)P(S3)
B.V(S1)和V(S2)V(S3)
C.P(S1)和P(S2)V(S3)
D.P(S1)和V(S2)V(S3)
问题2选项
A.V(S3)和P(S3)
B.V(S4)和P(S3)
C.P(S3)和P(S4)
D.V(S4)和P(S4)
问题3选项
A.V(S6)和P(S5)
B.V(S5)和P(S6)
C.P(S5)和V(S6)
D.P(S5)和V(S5)
【答案】第1题:D
第2题:B
第3题:A
【解析】本题考查P,V操作前驱图相关问题。
对于这种问题,根据箭头的指向判断相应的PV操作,先理清楚前趋图中的逻辑关系:P1没有前驱,P2的前驱是P1,P3的前驱是P2,P4的前驱是P2,P5的前驱是P3,P6的前驱是P4,P5。前驱就是指只有在前驱进程完成后,该进程才能开始执行。由图可知,这里进程之间有6条有向弧,分别表示为P1→P2,P2→P3,P2→P4,P3→P5,P4→P6,P5→P6,各个进程间的逻辑关系,那么我们需要设定6个信号量(S1、S2、S3、S4、S5、S6),利用PV操作来控制这些过程。
对于进程P1,完成之后,需要通知P2,所以在P1执行了之后,实现了V(S1)操作。
对于进程P2,开始之前需要申请资源S1,实现P(S1),P2执行完成之后,需要通知P3和P4,实现两个V操作,分别是V(S2)和V(S3)
对于进程P3,开始之前需要申请资源S2,实现P(S2),P3执行完成之后,需要通知P5,实现V操作,为V(S4)
对于进程P4,开始之前需要申请资源S3,实现P(S3),P4执行完成之后,需要通知P6,实现V操作,为V(S5)
对于进程P5,开始之前需要申请资源S4,实现P(S4),P5执行完成之后,需要通知P6,实现V操作,为V(S6)
对于进程P6,开始之前需要申请资源S5和S6,实现两个P操作,分别为P(S5)和P(S6)
30.单选题
以下关于冯诺依曼计算机的叙述中,不正确的是()。
问题1选项
A.程序指令和数据都采用二进制表示
B.程序指令总是存储在主存中,而数据则存储在高速缓存中
C.程序的功能都由中央处理器(CPU)执行指令来实现
D.程序的执行工作由指令进行自动控制
【答案】B
【解析】本题考查的是计算机体系结构相关知识。
在冯诺依曼结构中,程序指令和数据存在同一个存储器中。B选项描述错误。本题选择B选项,其他描述都是正确的。
31.单选题
对有向图G进行拓扑排序得到的拓扑序列中,顶点Vi在顶点Vj之前,则说明G中()
问题1选项
A.一定存在有向弧
B.一定不存在有向弧
C.必定存在从Vi到Vj的路径
D.必定存在从Vj到Vi的路径
【答案】B
【解析】本题考查拓扑序列的相关问题。
对于拓扑序列,需要按照有向弧的指向,明确其先后顺序,例如:存在一条Vi指向Vj的有向弧,那么在拓扑序列中Vi需要写出Vj前面,其次对于属于同一层次或者毫无关联的两个结点可以不用在意先后顺序。
根据题干描述,对有向图G进行拓扑排序得到的拓扑序列中,顶点Vi在顶点Vj之前,我们试着对以下选项进行分析:
A、一定存在有向弧,说法错误,不一定存在,Vi和Vj可以是并列的,并不一定要存在Vi到Vj的有向弧。
B、一定不存在有向弧,说法正确,如果存在有向弧,那么Vj是需要在顶点Vi之前的,则与题干相悖,所以必定不存在。
C、必定存在从Vi到Vj的路径,说法错误,不一定存在,Vi和Vj可以是两个毫无关联没有指向的关系,不会存在相关的路径。
D、必定存在从Vj到Vi的路径,说法错误,如果存在Vj到Vi的路径,Vj就会出现在Vi前面
32.单选题
数据库中的视图是一个虚拟表。若设计师为user表创建一个user1视图,那数据字典中保存的是()。
问题1选项
A.user1查询语句
B.user1视图定义
C.user1查询结果
D.所引用的基本表
【答案】B
【解析】本题考查的是视图相关概念。
视图在数据字典中保存的是视图定义。本题选择B选项。
33.案例题
阅读下列说明和Java代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
在软件系统中,通常都会给用户提供取消、不确定或者错误操作的选择,允许将系统恢复到原先的状态。现使用备忘录(Memento)模式实现该要求,得到如图6-1所示的类图。Memento包含了要被恢复的状态。Originator创建并在Memento中存储状态。Caretaker负责从Memento中恢复状态。
图6-1类图
【Java代码】
importjava.util.*;
classMemento{
privateStringstate;
publicMemento(Stringstate){this.state=state;}
publicStringgetState(){returnstate;}
}
classOriginator{
privateStringstate;
publicvoidsetState(Stringstate){this.state=state;}
publicStringgetState(){retumstate;}
publicMementosaveStateToMemento(){
return(1);
}
}
publicvoidgetStateFromMemento(MementoMemento){
state=(2);
}
classCareTaker{
privateListmementoList=newArrayList();
public(3){
mementoList.add(state);
}
public(4){
returnmemensoList.get(index);
}
}
classMementoPaneDems{
publicstaticvoidmain(String[]args){
Originatororiginator=newOriginator();
CareTakercareTaker=newcareTaker();
originator.setState("State#1");
originator.setState("State#2");
careTaker.add((5));
originator.setState("State#3");
careTaker.add((6));
originator.setState("State#4");
System.out.println("CurrentState"+originator.getState());
originator.getStateFromMemento(careTaker.get(0));
System.out.println("FristsavedState"+originator.getState());
originator.getStateFromMemento(careTaker.get(1));
System.out.println("SecondsavedState"+originator.getState());
}
}
【答案】(1)newMemento(state)
(2)Memento.getState()
(3)voidadd(Mementostate)
(4)Mementoget(intindex)
(5)originator.saveStateToMemento()
(6)originator.saveStateToMemento()
34.单选题
在面向对象设计时,如果重用了包中的一个类,那么就要重用包中的所有类,这属于()原则。
问题1选项
A.接口分离
B.开放-封闭
C.共同封闭
D.共同重用
【答案】D
【解析】考查关于面向对象设计的几大原则。
接口分离原则:使用多个专门的接口要比使用单一的总接口要好。
开放-封闭原则:对扩展开放,对修改关闭。
共同封闭原则:包中的所有类对于同一性质的变化应该是共同封闭的。一个变化若对一个包产生影响,则将对该包里的所有类产生影响,而对于其他的包不造成任何影响。
共同重用原则:一个包里的所有类应该是共同重用的。如果重用了包里的一个类,那么就要重用包中的所有类。
35.单选题
给定关系R(A,B,C,D)和关系S(A,D,E,F),若对这两个关系进行自然连接运算R▷◁S后的属性列有()个;关系代数表达式σR.B>S.F(R▷◁S)与()等价。
问题1选项
A.4
B.5
C.6
D.8
问题2选项
A.σ2>8(RxS)
B.π1,2,3,4,7,8(o1=5^2>8^4=6(R×S)
C.σ"2">"8"(RxS)
D.π11,2,3,4,7,8(σ1=5^"2">"8"^4=6(RxS))
【答案】第1题:C
第2题:B
【解析】第1题:本题考查关系代数相关知识。
自然连接的属性列数是二者之和减去重复列数,本题R和S进行自然连接后,结果属性列数为4+4-2=6,第一空选择C选项。
第2题:判断自然连接与笛卡尔积关系表达式是否等价时,需要注意需要同名属性列取值相等才可以与自然连接等价,本题应该选择B选项,其他选项都不满足S.A=R.AANDR.D=S.D。
36.单选题
用户在电子商务网站上使用网上银行支付时,必须通过(
)在Internet与银行专用网之间进行数据交换。
问题1选项
A.支付网关
B.防病毒网关
C.出口路由器
D.堡垒主机
【答案】A
【解析】本题计算机网络相关交互协议。
用户在电子商务网站上使用网上银行支付时,必须通过支付网关才能在Internet与银行专用网之间进行数据交换。
A、支付网关:是银行金融网络系统和Internet网络之间的接口,是由银行操作的将Internet上传输的数据转换为金融机构内部数据的一组服务器设备,或由指派的第三方处理商家支付信息和顾客的支付指令。
B、防病毒网关:防病毒网关是一种网络设备,用以保护网络内(一般是局域网)进出数据的安全。主要体现在病毒杀除、关键字过滤(如色情、反动)、垃圾邮件阻止的功能,同时部分设备也具有一定防火墙(划分Vlan)的功能。如果与互联网相连,就需要网关的防病毒软件。
C、出口路由器:一般指局域网出外网的路由器,或者指一个企业、小区、单位、城域网、省级网络、国家网络与外界网络直接相连的那台路由器。在网络间起网关的作用,是读取每一个数据包中的地址然后决定如何传送的专用智能性的网络设备。
D、堡垒主机:堡垒主机是一种被强化的可以防御进攻的计算机,作为进入内部网络的一个检查点,以达到把整个网络的安全问题集中在某个主机上解决,从而省时省力,不用考虑其它主机的安全的目的。
37.单选题
以下关于散列表(哈希表),及其查找特点的叙述中,正确的是()。
问题1选项
A.在散列表中进行查找时,只需要与待查找关键字及其同义词进行比较
B.只要散列表的装填因子不大于1/2,就能避免冲突
C.用线性探测法解决冲突容易产生聚集问题
D.用链地址法解决冲突可确保平均查找长度为1
【答案】C
38.案例题
阅读下列说明和图,回答问题1至问题4,将解答填入答题纸的对应栏内。
【说明】某现代农业种植基地为进一步提升农作物种植过程的智能化,欲开发智慧农业平台,集管理和销售于一体,该平台的主要功能有:
1.信息维护。农业专家对农作物、环境等监测数据的监控处理规则进行维护。
2.数据采集。获取传感器上传的农作物长势、土壤墒情、气候等连续监测数据,解析后将监测信息进行数据处理、可视化和存储等操作。
3.数据处理。对实时监测信息根据监控处理规则进行监测分析,将分析结果进行可视化并进行存储、远程控制对历史监测信息进行综合统计和预测,将预测信息进行可视化和存储。
4.远程控制。根据监控处理规则对分析结果进行判定,依据判定结果自动对控制器进行远程控制。平台也可以根据农业人员提供的控制信息对控制器进行远程控制。
5.可视化。实时向农业人员展示监测信息:实时给农业专家展示统计分析结果和预测信息或根据农业专家请求进行展示。
现采用结构化方法对智慧农业平台进行分析与设计,获得如图1-1所示的上下文数据流图和图1-2所示的0层数据流图。
【问题1】(4分)
使用说明中的词语,给出图1-1中的实体E1~E4的名称。
【问题2】(4分)
使用说明中的词语,给出图1-2中的数据存储D1~D4的名称。
【问题3】
(4分)
根据说明和图中术语,补充图1-2中缺失的数据流及其起点和终点。
【问题4】(3分)
根据说明,“数据处理”可以分解为哪些子加工?进一步进行分解时,需要注意哪三种常见的错误?
【答案】【问题1】(4分)
E1:传感器;E2:农业专家;E3:农业人员;E4:控制器
【问题2】(4分)
D1:监控处理规则文件D2:监测信息文件D3:分析结果文件D4:预测信息文件
【问题3】
(4分)
起点D1,终点P4,监控规则
起点P5,终点E2,根据请求进行展示
起点P3,终点P5,分析结果
起点P3,终点P5,预测信息
【问题4】(3分)
数据处理加工分为数据分析,可视化与存储;
黑洞、奇迹、灰洞
【解析】问题1:补充实体名,找出题干给出的名词形式。
可以通过下方0层图对比,根据“农业专家对农作物、环境等监测数据的监控处理规则进行维护。”描述,我们可知E2是农业专家;根据“获取传感器上传的农作物长势、土壤墒情、气候等连续监测数据”得知E1是传感器;根据“平台也可以根据农业人员提供的控制信息对控制器进行远程控制”,得知E3是农业人员;根据“根据监控处理规则对分析结果进行判定,依据判定结果自动对控制器进行远程控制。”,得知E4是控制器。
问题2:补充数据存储,给出题干关键信息,文件,数据、表、信息等名词。
通过下文0层图信息得知,根据“农业专家对农作物、环境等监测数据的监控处理规则进行维护。”,可知D1是存储相关监控处理规则文件;根据“解析后将监测信息进行数据处理、可视化和存储等操作。”得知D2是监测信息文件;根据“对实时监测信息根据监控处理规则进行监测分析,将分析结果进行可视化并进行存储”,D3和D4分别是分析结果文件和预测信息文件。
问题3:补充数据流,根据平衡原则和题干的提示。
首先根据数据流图平衡原则可知,父子图不平衡,对于父图中的由加工指向实体E2的一条数据流的名称为”统计分析数据“与子图中加工P5指向实体的E2的一条数据流”统计分析结果“表示不同,根据题干说明要求从1-2子图补充,说明父图的统计分析数据=子图的分析结果+缺失的数据流构成,根据题干信息”实时给农业专家展示统计分析结果和预测信息或根据农业专家请求进行展示。“得知由P5-E2的根据请求进行展示数据流。
其余的三条需要根据题干描述,对于加工和数据存储或加工与加工之间的数据流。
根据题干”根据监控处理规则对分析结果进行判定”得知存在一条有D1-P4监控规则;
根据题干“实时给农业专家展示统计分析结果和预测信息”得知存在P3-P5的分析结果和P4-P5的预测结果。
问题4:数据处理根据题干描述“对实时监测信息根据监控处理规则进行监测分析,将分析结果进行可视化并进行存储、远程控制对历史监测信息进行综合统计和预测,将预测信息进行可视化和存储。”可分为数据分析,可视化和存储三个步骤。需要注意哪三种常见的错误:黑洞、奇迹、灰洞。
39.单选题
Java语言符合的特征有(
)和自动的垃圾回收处理
①采用即时编译
②采用静态优化编译
③对象在堆空间分配
④对象在栈空间分配
问题1选项
A.①③
B.①④
C.②③
D.②④
【答案】A
【解析】JAVA是解释型语言,可以生成中间代码后再边解释为目标代码边执行,也就是即时编译,可以根据运行机器优化代码,采用的是动态优化编译。所以①的说法正确,②的说法错误。
Java程序最初都是通过解释器(Interpreter)进行解释执行的,当虚拟机发现某个方法或代码块的运行特别频繁,就会把这些代码认定为“热点代码”(HotSpotCode),为了提高热点代码的执行效率,在运行时,虚拟机将会把这些代码编译成本地机器码,并以各种手段尽可能地进行代码优化,这个过程就叫即时编译,运行时完成这个任务的后端编译器被称为即时编译器。
JAVA的栈空间只存放基本类型、引用类型变量和方法,而堆中存储实例对象。③的说法正确,④的说法错误。
本题综合选择A选项。
40.单选题
Python语言的特点不包括()。
问题1选项
A.跨平台、开源
B.编译型
C.支持面向对象程序设计
D.动态编程
【答案】B
【解析】本题考查python相关问题。
python语义的特点:
跨平台、开源、简单易学、面向对象、可移植性、解释性、开源、高级语言、可扩展性、丰富的库、动态编程等等
综上所述B选项错误,python不是编译型语言,而是解释型语言。
41.案例题
【说明】
某房产公司,欲开发一个房产信息管理系统,其主要功能描述如下:
1.公司销售的房产(Property)分为住宅(House)和公寓(Cando)两类。针对每套房产,系统存储房产证明、地址、建造年份、建筑面积、销售报价、房产照片以及销售状态(在售、售出、停售)等信息。对于住宅,还需存储楼层、公摊面积、是否有地下室等信息;对于公寓,还需存储是否有阳台等信息。
2.公司雇佣了多名房产经纪(Agent)负责销售房产。系统中需存储房产经纪的基本信息,包括:姓名、家庭住址、联系电话、受雇的起止时间等。一套房产同一时段仅由一名房产经纪负责销售,系统中会记录房产经纪负责每套房产的起始时间和终止时间。
3.系统用户(User)包括房产经纪和系统管理员(Manager)。用户需经过系统身份验证之后才能登录系统。房产经纪登录系统之后,可以录入负责销售的房产信息,也可以查询所负责的房产信息。房产经纪可以修改其负责的房产信息,但需要经过系统管理员的审批授权。
4.系统管理员可以从系统中导出所有房产的信息报表。系统管理员定期将售出和停售的房产信息进行归档。若公司确定不再销售某套房产,系统管理员将该房产信息从系统中删除。
现采用面向对象方法开发该系统,得到如图3-1所示的用例图和图3-2所示的初始类图。
图3-1用例图
图3-2
类图
【问题1】(7分)
(1)根据说明中的描述,分别给图3-1中A1到A2所对应的名称以及U1~U3所对应的用例名称。
(2)
根据说明中的描述
,分别给图3-1中(a)和(b)用例之间的关系。
【问题2】(6分)
根据说明中的描述
,分别给图3-2中C1~C6所对应的类名称。
【问题3】(2分)
图3-2中AgentList是一个英文名称,用来进一步阐述C1和C6之间的关系,根据说明中的描述,绘出AgentList的主要属性。
【答案】【问题1】(7分)
A1:房产经纪;A2:系统管理员
U1:审批授权;U2:修改房产信息;U3:删除房产信息
(a):>;(b):>
【问题2】(6分)
C1:Property
C2:House
C3:
Cando
C4:User
C5:Manager
C6:Agent
【问题3】(2分)
AgentList的主要属性有:房产经纪负责该房产的起始时间和结束时间
【解析】问题1:
关于该用例图中需要找出对应的参与者与用例,参与者一般指人名词表示,用例一般表示操作用动名词表示。
“房产经纪登录系统之后,可以录入负责销售的房产信息,也可以查询所负责的房产信息。房产经纪可以修改其负责的房产信息”可知A1是房产经纪,“系统管理员可以从系统中导出所有房产的信息报表。系统管理员定期将售出和停售的房产信息进行归档”,可知A2是系统管理员。
根据描述“房产经纪可以修改其负责的房产信息,但需要经过系统管理员的审批授权。”和“系统管理员将该房产信息从系统中删除。”可知U1为审批授权,U2为修改房产信息,U3为删除房产信息。
a是U1和U2的关系,U2指向U1,先修改房产信息,再审批授权,典型的包含关系,使用关键词《include》
b是U3与归档的关系,正常进行归档,对于不再销售的房产信息进行删除,典型的扩展关系,使用关键词《extend》
问题2:
根据类图对应的描述,两组泛化关系,C1与C2、C3以及C4与C5、C6,再根据C1与C6和C5有关系,以及题干典型的两组泛化关系可得:
C1:Property
C2:House
C3:
Cando
C4:User
C5:Manager
C6:Agent
问题3:
AgentList的主要属性有:房产经纪负责该房产的起始时间和结束时间
42.单选题
以下关于杀毒软件的描述中,错误的是()。
问题1选项
A.应当为计算机安装杀毒软件并及时更新病毒库信息
B.安装杀毒软件可以有效防止蠕虫病毒
C.安装杀毒软件可以有效防止网站信息被篡改
D.服务器操作系统也需要安装杀毒软件
【答案】C
【解析】本题考查的是网络安全管理相关内容。
在杀毒软件的使用过程中,我们应该为个人计算机、服务器都安装杀毒软件,并且应当及时更新病毒库信息,可以有效防止蠕虫病毒等。ABD选项描述都是正确的。
杀毒软件只能防病毒,不能有效防止网站信息被篡改,所以C选项描述错误,本题选择C选项。
43.单选题
排序算法的稳定性是指将待排序列排序后,能确保排序码中的相对位置保持不变。()是稳定的排序算法。
问题1选项
A.冒泡排序
B.快速排序
C.堆排序
D.简单选择排序
【答案】A
【解析】本题考查常见算法的应用。
将待排序列排序后,能确保排序码中的相对位置保持不变指的是稳定性排序,本题中只有冒泡排序是稳定的排序,快速排序、堆排序、简单选择排序都是不稳定排序。本题选择A选项。
44.单选题
在某系统中,不同组(GROUP)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,得到如下所示的类图。该设计采用(
)模式,用一个对象来封装系列的对象交互;使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互。该模式属于(
)模式,该模式适用(
)。
问题1选项
A.状态(State)
B.策略(Strategy)
C.解释器(Interpreter)
D.中介者(Mediator)
问题2选项
A.创建型类
B.创建型对象
C.行为型对象
D.行为型类
问题3选项
A.需要使用一个算法的不同变体
B.有一个语言需要解释执行,并且可将句子表示为一个抽象语法树
C.一个对象的行为决定于其状态且必须在运行时刻根据状态改变行为
D.一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解
【答案】第1题:D
第2题:C
第3题:D
【解析】本题考查设计模式的问题。
针对于题干和图示来看,不同组(GROUP)访问数据的权限不同,每个用户(User)可以是一个或多个组中的成员,每个组包含零个或多个用户。现要求在用户和组之间设计映射,将用户和组之间的关系由映射进行维护,在组和用户之间用UserGroupMapper实现两者的交互,两者之间不直接交互,用一个对象来封装系列的对象交互;使用户对象和组对象不需要显式地相互引用,从而使其耦合松散,而且可以独立地改变它们之间的交互,是典型关于中介者模式的描述和应用。
中介者模式属于行为型对象模型,可以适用于一组对象以定义良好但是复杂的方式进行通信,产生的相互依赖关系结构混乱且难以理解。
其中以下场景中A选项是对策略模式的描述,B选项是对解释器的描述,C选项是对状态模式的描述。
综上所述,本题选择D,C,D
45.案例题
阅读下列说明和C++代码,将应填入(n)处的字句写在答题纸的对应栏内。
【说明】
在线支付是电子商务的一个重要环节,不同的电子商务平台提供了不同的支付接口。现在需要整合不同电子商务平台的支付接口,使得客户在不同平台上购物时,不需要关心具体的支付接口。拟采用中介者(Mediator)设计模式来实现该需求,所设计的类图如图5-1所示。
【C++代码】
【答案】(1)virtualvoidbuy(doublemoney,WebService*service)
(2)WebServiceMediator*
(3)virtualvoidbuyService(doublemoney)=0
(4)mediator->buy(money,this)
(5)mediator->buy(money,this)
【解析】(1)空是属于接口WebServiceMeditor内的方法,我们可以通过下文的实现类中找到ConcreteServiceMeditor可知缺少了一个buy()方法
故第一空填写virtualvoidbuy(doublemoney,WebService*service)
;(2)空类WebService中属性的参数类型,Colleague与Mediator之间的关联关系由属性meditor实现,所以第2空应该填写WebServiceMediator*;(3)空类WebService中的virtual
方法,根据其具体子类可以看到缺少的是buyService方法,书写成
virtualvoidbuyService(doublemoney)=0
;(4)空和(5)空具体同事类Amazon、Ebay与中介者的通信,调用中介者之间的支付接口,所以空(4)和(5)都填写mediator->buy(money,this)
。
46.单选题
在风险管理中,通常需要进行风险监测,其目的不包括(
)。
问题1选项
A.消除风险
B.评估所预测的风险是否发生
C.保证正确实施了风险缓解步骤
D.收集用于后续进行风险分析的信息
【答案】A
【解析】风险监测主要是对风险进行预测,评估,收集相关的信息,用来防止风险,从而做好相关的防范措施。
对于评估所预测的风险是否发生、保证正确实施了风险缓解步骤、收集用于后续进行风险分析的信息都是风险监测的目的
至于A选项消除风险,风险是无法被消除掉的,只能尽量避免。
47.案例题
阅读下列说明和代码,回答问题1和问题2,将解答写在答题纸的对应栏内。
【说明】
凸多边形是指多边形的任意两点的连线均落在多边形的边界或内部。相邻的点连线落在多边形边界上,称为边;不相邻的点连线落在多边形内部,称为弦。假设任意两点连线上均有权重,凸多边形最优三角剖分问题定义为:求将凸多边形划分为不相交的三角形集合,且各三角形权重之和最小的剖分方案。每个三角形的权重为三条边权重之和。
假设N个点的凸多边形点编号为V1,V2,……,VN,若在VK处将原凸多边形划分为一个三角形V1VkVN,两个子多边形V1,V2,…,Vk和Vk,Vk+1,…VN,得到一个最优的剖分方案,则该最优剖分方案应该包含这两个子凸边形的最优剖分方案。用m[i][j]表示带你Vi-1,Vi,…Vj构成的凸多边形的最优剖分方案的权重,S[i][j]记录剖分该凸多边形的k值。
则
其中:W(Vi-1VkVj)=Wi-1,k+Wk,j+Wj,i-1为三角形Vi-1VkVj的权重,Wi-1,k,Wk,j,Wj,i-1分别为该三角形三条边的权重。求解凸多边形的最优剖分方案,即求解最小剖分的权重及对应的三角形集。
[C代码]
#include<stdio.h>
#defineN6//凸多边形规模
intm[N+1][N+1];//m[i][j]表示多边形Vi-1到Vj最优三角剖分的权值
intS[N+1][N+1];//S[i][j]记录多边形Vi-1到Vj最优三角剖分的k值
intW[N+1][N+1];//凸多边形的权重矩阵,在m
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度国际快递运输与时效跟踪服务合同
- 2025年度屋顶租赁合同附屋顶广告权益共享协议
- 2025年度时尚女鞋品牌全国代理权购买合同样本
- 培养学生团队合作能力的美术教学计划
- 激活团队潜力的成功经验计划
- 学校年度班级工作计划表目
- 区域仓库布局的设计原则计划
- 2025年港物运输项目合作计划书
- 主管的职业素养与榜样作用计划
- 2025年激光转速测量仪项目建议书
- 2025造价咨询工作计划范本
- 医院审计科科长述职报告
- 《档案管理课件》课件
- 2024年度中国共产主义共青团团课课件版
- 关于谷爱凌的课件
- 《学写文学短评》课件 高中语文统编版必修上册
- 《中药的性能》课件
- 大型商业综合体消防安全管理规则培训
- 2025年中考物理终极押题猜想(新疆卷)(全解全析)
- 1《读懂彼此的心》(说课稿)2023-2024学年统编版道德与法治五年级下册
- DB32T 2857-2015 玉米产量现场测定操作规程
评论
0/150
提交评论