2022年职业考证-软考-软件设计师考试全真模拟易错、难点剖析B卷(带答案)
一.综合题(共15题)
1.
单选题
以下关于PCI总线和SCSI总线的叙述中,正确的是( )。
问题1选项
A.PCI总线是串行外总线,SCSI 总线是并行内总线
B.PCI总线是串行内总线,SCSI总线是串行外总线
C.PCI总线 是并行内总线,SCSI 总线是串行内总线
D.PCI总线是并行内总线, SCSI 总线是并行外总线
【答案】D
【解析】属于常见总线的分类:
PCI总线:是目前微型机上广泛采用的内总线,采用并行传输方式。
SCSI总线:小型计算机系统接口时一条并行外总线,广泛用于连接软硬磁盘、光盘、扫描仪等。
2.
单选题
数据库的安全机制中,通过提供()供第三方开发人员调用进行数据更新,从而保证数据库的关系模式不被第三方所获取。
问题1选项
A.触发器
B.存储过程
C.视图
D.索引
【答案】B
【解析】本题考查的是数据库基础知识。
索引是数据库中提高查询效率的一种机制,不能进行数据更新。
视图一般是提供查询数据的,具有一定安全机制,但是不能进行数据更新。
触发器可以作为更新机制,但是无法避免数据库的关系模式被第三方所获取,并不安全。
存储过程方式,可以定义一段代码,从而提供给用户程序来调用,具体更新过程通过代码调用,避免了向第三方提供系统表结构的过程,体现了数据库的安全机制。所以本题选择B选项。
3.
单选题
某有限自动机的状态转换图如下图所示,与该自动机等价的正规式是( )。
问题1选项
A.(0|1)*
B.(0|10)*
C.0*(10)*
D.0*(1|0)*
c语言编程软件是系统软件吗【答案】B
【解析】本题考查程序语言基础知识。
从题中的自动机可分析出,初态q0同时是终态,从q0到q0的弧(标记0)表明该 自动机识别零个或多个0构成的串,路径q0→q1→q0的循环表明“10”的多次重复,因此该自动机识别的字符串是“0|10”的无穷多次,表示为(0|10)*。
4.
案例题
【说明】
希尔排序算法又称最小增量排序算法,其基本思想是:
步骤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
void shellsort(int data[ ], int n){
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,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)
5.
单选题
针对月收入小于等于3500元免征个人所得税的需求,现分别输入3499,3500和3501进行测试,则采用的测试方法( )。
问题1选项
A.判定覆盖
B.边界值分析
C.路径覆盖
D.因果图
【答案】B
【解析】本题考查的是边界值覆盖的相关应用。
常见黑盒测试方法包括因果图、有效等价类和边界值分析等。白盒测试包括语句覆盖、判断覆盖、条件覆盖、路径覆盖等。
判断覆盖和路径覆盖都需要了解模块内部执行过程,与本题不符。
因果图(又名因果图、石川图、鱼骨图),指的是一种发现问题“根本原因”的分析方法,常用在项目管理中,黑盒测试也可以使用该方法。
6.
单选题
下列不属于计算机病毒的是( )。
问题1选项
A.永恒之蓝
B.蠕虫
C.特洛伊木马
D.DDOS
【答案】D
【解析】本题考查的是网络威胁相关内容。
在本题中将木马也归于病毒一类了。
DDoS指的是分布式拒绝服务攻击,不属于计算机病毒与木马,其他选项都属于计算机病毒或木马,本题选择D选项。
7.
单选题
在TCP/IP协议栈中,远程登录采用的协议为( )。
问题1选项
A.HTTP
B.TELNET
C.SMTP
D.FTP
【答案】B
【解析】本题考查TCP/IP协议簇相关知识。
HTTP是超文本传输协议,SMTP是邮件传输协议,FTP是文件传输协议,都与远程登录无关,只有B选项TELNET是远程登录服务的标准协议和主要方式。本题选择B选项。
8.
单选题
如下图如下E-R图中,两个实体R1、R2之间有一个联系E,当E的类型为( )时必须将E转换成—个独立的关系模式?
问题1选项
A.1:1
B.1:*
C.*:1
D.*: *
【答案】D
【解析】本题考查的是E-R转换为关系模式的转换规则。其中1:1和1:*类型的联系可以归并到实体中,而 *:*联系必须单独转换为1个独立的关系模式。本题选择D选项。
9.
单选题
Designing object -oriented software is hard,and designing( )object -oriented software is even harder.You must find pertinent(相关的)objects,factor them into class at the right granularity,define class interfaces and inheritances,and establish key relationships among them.You design should be specific to the problem at hand but also( )enough to address future problems and requirements.You also want to avoid redesign,or at least minimize it.Experienced object -oriented designers will tell you that a reusable and flexible design is difficult if not impossible to get "right" the first time.Before a design is finished,they
usually try to reuse it several times,modifying it each time.
Yet experienced object-oriented designers do make good designs.Meanwhile new designers are( )by the options available and tend to fall back on non-object-oriented techniques they've used before.lt takes a long time for novices to learn what good object-oriented design is all about.Experienced designers evidently know something inexperienced ones don't.What is it?
One thing expert designers know not to do is solve every problem from first principles.Rather, they reuse solutions that have worked for them in the past.When they find a good( ).They use it again and again.Such experience is part of what makes them experts.Consequently,you'll find( )patterns of classes and communicating objects in many object-oriented systems.
问题1选项
A.runnable
B.right
C.reusable
D.pertinent
问题2选项
A.clear
B.general
C.personalized
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论