2023年11月软考中级软件设计师上午真题_第1页
2023年11月软考中级软件设计师上午真题_第2页
2023年11月软考中级软件设计师上午真题_第3页
2023年11月软考中级软件设计师上午真题_第4页
2023年11月软考中级软件设计师上午真题_第5页
已阅读5页,还剩3页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

2023年11月软考中级软件设计师上午真题(总分:36.00,做题时间:120分钟)一、单项选择题(总题数:36,分数:36.00)1.线性表采用链表存储结构的特点中不包括(

)。

(分数:1.00)

A.所需空间大小与表长成正比

B.可随机访问表中的任一元素

C.插入和删除操作不需要移动元素

D.无须事先估计存储空间大小解析:A选项,链表每增加一个节点,数据存储空间随着变大,A选项正确。B选项,链表元素由数据域和指针域组成,指针域用于指向直接后继的元素的地址,由于链表元素不一定是连续的,因此整个链表的存取必须从头指针开,B选项错误。C选项,插入和删除操作不需要移动元素,指向改变指针域的指向即可,C选项正确。D选项,链表不需要连续的存储空间存储,因此无需实现估计存储空间大小,D选项正确2.在双核处理器中,双核是指(

)。

(分数:1.00)

A.执行程序时有两条指令流水线并行工作

B.在一个CPU中集成两个运算核心以提高运算能力

C.利用超线程技术实现的多任务并行处理

D.在主板上设置两个独立的CPU

以提高处理能力解析:双核处理器是指在一个处理器上集成两个运算核心,从而提高计算能力。3.采用贪心策略求解()问题,一定可以得到最优解。

(分数:1.00)

A.分数背包

B.0-1背包

C.旅行商

D.最长公共子序列解析:贪心算法是指在对问题求解时,总是做出在当前看来是最好的选择。分数背包即部分背包问题,物品可选择部分或全部放进背包,直至装满背包,通过贪心算法求解可将放入单位价值最大的物品优先放入背包,以实现背包物品价值的最大化;0-1背包指物品整体放入或不放入背包,因此不一定能完全装满背包,采用贪心算法可以取得局部最优解,但不一定是全局最优解;旅行商问题是指旅行商要到若干个城市旅行,每访问一个城市后都会回到最初开始的城市,用贪心法不一定能求得最优解;最长公共子序列用贪心法也不一定能求得最优解;4.统一过程模型的四个阶段中,在()阶段进行需求分析和架构演进。

(分数:1.00)

A.移交

B.精化

C.构建

D.起始解析:起始阶段:起始阶段专注于项目的初创活动。精化阶段:精化阶段在理解了最初的领域范围之后进行需求分析和架构演进。构建阶段:构建阶段关注系统的构建,产生实现模型。移交阶段:移交阶段关注于软件提交方面的工作,产生软件增量。5.下列协议中,不属于安全协议的是(

)。

(分数:1.00)

A.IPsec

B.SNMP

C.SFTP

D.HTTPS解析:SNMP是一种用于网络设备管理的协议,早期的版本没有任何安全设计。6.以下关于汇编语言程序的叙述中,错误的是()。

(分数:1.00)

A.汇编程序的功能是将汇编语言源程序翻译为相应的目标程序

B.用汇编语言编写的程序可以直接被计算机硬件执行

C.汇编语言是低级程序设计语言

D.汇编语言与计算机硬件体系结构密切相关解析:用汇编语言编写的程序必须经过汇编程序翻译成计算机所能识别的机器语言程序(即目标程序)后,才能被计算机执行。7.以下关于方法重载(Overload)和方法覆盖(Overide)与多态的关系的叙述中,不正确的是(

)

(分数:1.00)

A.覆盖通过动态绑定机制实现多态

B.重载通过动态绑定机制实现多态

C.重载属于编译时多态,在一个类中定义多个名称相同而参数表不同的方法

D.覆盖属于运行时多态,子类重新定义父类中已定义的方法解析:方法重载是通过静态绑定机制实现多态。在编译时,根据方法调用时传递的参数类型和数量来确定具体是调用哪个重载方法。方法重载是一种静态多态,也称为编译时多态。8.以下关于白盒测试原则的叙述中,不正确的是()。

(分数:1.00)

A.在所有的逻辑判断中,取“真”和取“假”的两种情况至少都能执行一次

B.程序模块中的所有独立路径至少执行一次

C.每个循环都应在边界条件和一般条件下各执行一次

D.在输入条件规定的取值范围的情况下,合理的输入和不合理的输入至少都能执行一次

√解析:白盒测试原则如下:(1)程序模块中的所有独立路径至少执行一次(2)在所有的逻辑判断中,取“真”和取“假”的两种情况至少都能执行一次(3)每个循环都应在边界条件和一般条件下各执行一次(4)测试程序内部数据结构的有效性等9.对采用面向对象方法开发的系统进行测试时,通常从不同层次进行测试。对类中定义的每个方法进行测试属于()层。

(分数:1.00)

A.系统

B.算法

C.类

D.模板解析:对面向对象软件的测试可分为下列的4个层次进行。(1)算法层:测试类中定义的每个方法。(2)类层:测试封装在同一个类中的所有方法与属性之间的相互作用。(3)模板层:测试一组协同工作的类之间的相互作用。(4)系统层:把各个子系统组装成完整的面向对象软件系统,在组装过程中同时进行测试。10.下列算法中,不属于公开密钥加密算法的是()。

(分数:1.00)

A.DSA

B.ECC

C.DES

D.RSA解析:DES是一种对称密钥算法。11.POP3服务默认的TCP端口号是(

)。

(分数:1.00)

A.110

B.25

C.20

D.80解析:POP3默认端口号是110。12.以下关于折半查找的叙述中,不正确的是(1)。采用折半查找等概率查找某个包含8个元素的有序表,查找成功的平均查找长度为(2)。问题1

(分数:1.00)

A.是一个分治算法

B.只能应用于有序表

C.查找成功和不成功的平均查找长度是一样的

D.若表长为n,时间复杂度为0(logn)解析:折半查找是在有序数组中查找特定元素,将数组分成两半,若中间元素不是特定元素,则将其中一半的数据再分成两半,直至找到特定元素,符合分治算法的基本思想。因此A、B选项正确。查找成功的平均长度是将每个元素的查找次数相加后再除以元素总数,而查找不成功则是最后的结果是空指针,因此需要算出每个空指针的查找次数再累加后除以空指针总数,它们的平均查找长度不一定相同。因此C选项错误,若表长为n,则时间复杂度为O(logn),D选项正确。13.以下关于折半查找的叙述中,不正确的是(1)。采用折半查找等概率查找某个包含8个元素的有序表,查找成功的平均查找长度为(2)。问题2

(分数:1.00)

A.9/8

B.1/8

C.20/8

D.21/8

√解析:查找成功的平均长度是将每个元素的查找次数相加后再除以元素总数。8个元素,能一次命中的有1个元素,2次查找命中的有2个元素,3次查找命中的有4个元素,4次才能命中的有1个元素。所以平均长度是(1+2*2+3*4+4)/8=21/8。14.某文件管理系统在磁盘上建立了位示图(bitmap),记录滋盘的使用情况。若计算机系统的字长为128位,磁盘的容量为1024GB,物理块的大小为8MB,那么该位示图的大小为(

)个字。

(分数:1.00)

A.4096

B.1024

C.2048

D.4098解析:1024*1024MB/(128*8MB)=102415.在项目开发过程中,(

)不属于项目估算的主要因素。

(分数:1.00)

A.规模

B.类型

C.成本

D.工作量解析:项目估算一般需要考虑规模、工作量、成本等因素,不包括类型。16.执行以下Python语句之后,列表x为(

)x=[1,2,3]x.append([4,5])

(分数:1.00)

A.[1,2,3,4,5]

B.[1,2,3]

C.[4,5]

D.[1,2,3,[4,5]]

√解析:x.append()是在x元素后面追加括号的内容。17.防火墙不具备(

)功能。

(分数:1.00)

A.病毒防治

B.状态检测

C.代理

D.包过滤解析:防火墙技术经历了包过滤、应用代理网关和状态检测技术三个发展阶段。18.

一棵哈夫曼树共有127个结点,对其进行哈夫曼编码,共能得到(

)个字符的编码。

(分数:1.00)

A.64

B.127

C.63

D.126解析:当两个字符构造哈夫曼树,就会多出一个节点,若是三个字符则多出两个节点,若是四个字符则多出三个节点,以此类推,若是有n个字符构造哈夫曼数,则会多出n-1个节点。因此哈夫曼树的节点数就是n+n-1个,由此计算出字符数为64.19.浮点加(减)法运算过程中需要以下操作要素:①零操作数检查②规格化及舍入处理③尾数加(减)运算④对阶操作。正确的加(减)法操作流程是(

)。

(分数:1.00)

A.①③④②

B.①④③②

C.②①④③

D.④③②①解析:浮点数加(减)法操作流程:零操作数检查、对阶操作、尾数加(减)运算、规格化及舍入处理。20.某队列允许在其两端进行入队操作,但仅允许在一端进行出队操作。若元素a、b、c、d依次全部入队列,之后进行出队列操作,则不能得到的出队序列是(

)。

(分数:1.00)

A.dbac

B.cabd

C.acdb

D.bacd解析:假设仅左端可以出,左右两端都可以入,元素a、b、c、d依次全部入队列则可能出现以下几种入栈方式:第一种:a先从任意一端进入,然后b从左端进入,则为ba,然后c从右端进入,则为bac,接着d再从左端进入,则为dbac,最后再按照此顺序从左端出栈,因此A选项满足要求;第二种:a先从任意一端进入,然后b从右端进入,则为ab,然后c从左端进入,则为cab,接着d再从右端进入,则为cabd,最后再按照此顺序从左端出栈,因此B选项满足要求;第三种:a先从任意一端进入,然后b从左端进入,则为ba,然后c从右端进入,则为bac.接着d再从右端进入,则为bacd.最后再按照此顺序从左端出栈,因此D选项满足要求;C选项根据题干要求无法得出,因此选C。开发方法(结构化与面向对象)21.C选项根据题干要求无法得出,因此选C。开发方法(结构化与面向对象)以下关于基于构件的开发模型的叙述中,不正确的是()。

(分数:1.00)

A.本质上是演进模型,以迭代方式构建软件

B.必须采用面向对象开发技术

C.采用预先打包的软件构件构造软件

D.构件可以是组织内部开发的,也可以是商品化成品软件构件解析:基于构件的开发是指利用预先打包的构件来构造应用系统。构件可以是组织内部开发的构件,也可以是商品化成品软件构件。基于构件的开发模型具有许多螺旋模型的特点,它本质上是演化模型,需要以迭代方式构建软件。其不同之处在于,基于构件的开发模型采用预先打包的软件构件开发应用系统。22.在C/C++程序中,对于函数中定义的非静态局部变量,其存储空间在(

)分配。

(分数:1.00)

A.栈区

B.静态数据区

C.文本区

D.自由堆区解析:非静态局部变量存储在栈区。23.以下关于测试原则的叙述中,不正确的是()。

(分数:1.00)

A.充分注意测试中的群集现象

B.设计测试用例时,应包括合理的输入条件和不合理的输入条件

C.应该由程序员测试自己编写的程序

D.严格执行测试计划,避免测试的随意性解析:在进行信息系统测试时应遵循以下基本原则:1、应尽早并不断地进行测试;2、测试工作应该避免由原开发软件的人或小组承担;3、在设计测试方案时,不仅要确定输入数据,而且要根据系统功能确定预期输出结果;4、在设计测试用例时,不仅要设计有效、合理的输入条件,也要包含不合理、失效的输入条件;5、在测试程序时,不仅要检验程序是否做了该做的事,还要检验程序是否做了不该做的事;6、严格按照测试计划进行,避免测试的随意性;7、妥善保存测试计划、测试用例,作为软件文档的组成部分,为维护提供方便。8、测试例子都是精心设计出来的,可以为重新测试或追加测试提供方便。24.在微型计算机中,管理键盘最适合采用的I/O控制方式是(

)方式

(分数:1.00)

A.DMA

B.无条件传送

C.程序查询

D.中断

√解析:在微型计算机中,管理键盘最适合采用的I/O控制方式是中断方式。因为键盘是慢速设备,并且无法预知I/O时间。25.当一棵非空二叉树的(

)时,对该二叉树进行中序遍历和后序遍历所得的序列相同。

(分数:1.00)

A.每个非叶子结点都只有左子树

B.每个非叶子结点都只有右子树

C.每个非叶子结点的度都为1

D.每个非叶子结点的度都为2解析:中序遍历的顺序是左根右,后序遍历的顺序是左右根,若每个非叶子节点都只有左子树,那中序后序的遍历顺序此时可以简单的看成是左根,二者所得的序列一致,因此答案选择A选项。26.以下关于甘特图的叙述中,不正确的是(

)。

(分数:1.00)

A.一种进度管理的工具

B.易于看出每个子任务的持续时间

C.易于看出目前项目的实际进度情况

D.易于看出子任务之间的衔接关系

√解析:甘特图是一种进度管理工具,能清晰地描述每个任务从何时开始,到何时结束,任务的进展情况以及各个任务之间的并行性。但是她不能清晰地反映出各任务之间的依赖关系,难以确定整个项目的关键所在,也不能反映计划中有潜力的部分。27.以下关于软件工程标准化的叙述中,不正确的是(

)。

(分数:1.00)

A.可以提高开发人员之间的沟通效率

B.有助于提高管理水平

C.有助于提高软件产品质量

D.可以提高每一位开发人员的开发技能

√解析:软件工程标准化:1、提高软件质量;2、提高开发效率;3、降低成本和风险;4、提高管理水平;28.数据库的基本表、存储文件和视图的结构分别对应(

)。

(分数:1.00)

A.用户视图、内部视图和概念视图

B.用户视图、概念视图和内部视图

C.概念视图、用户视图和内部视图

D.概念视图、内部视图和用户视图

√解析:数据库的基本表对应概念视图,存储文件对应内部视图,视图对应用户视图。29.

(

)模式可以给对象动态地添加一些额外的职责,而不改变该对象的结构。

(分数:1.00)

A.装饰(Decorator)

B.外观(Facade)

C.组合(Composite)

D.享元(Flyweight)解析:装饰模式可以给对象动态地添加一些额外的职责,而不改变该对象的结构。30.在SQL中,结束事务通常可以使用COMMIT和ROLLBACK语句。若某事务T执行了(

)。

(分数:1.00)

A.ROLLBACK语句,则可将T;对数据库的更新撤销

B.ROLLBACK语句,则可将T;对数据库的更新写入数据库

C.COMMIT语句,则T;对数据库影响可用ROLLBACK语句来撤销

D.ROLLBACK语句,则表示T;已正确地执行完毕解析:COMMIT:事务提交。该操作表示事务成功的结束,它将通知事务管理器将该事务的所有更新操作现在可以被提交或永久保留;ROLLBACK:事务回滚。该操作表示事务非成功地结束,它将通知事务管理器出故障了,数据库可能处于不一致状态,该事务的所有更新操作必须回滚或撤销。31.利用报文摘要算法生成报文摘要的目的是(

)。

(分数:1.00)

A.防止发送的报文被篡改

B.对传输数据进行加密,防止数据被窃听

C.验证通信对方的身份,防止假冒

D.防止发送方否认发送过的数据解析:信息摘要简要的描述了一份较长的信息或文件,它可以被看作一份长文件的“数字指纹”。信息摘要用于创建数字签名,对于特定的文件而言,信息摘要是唯一的。不同的文件产生的信息摘要也是不一样的。常见的算法有MD5和SHA,可以用来保证数据的完整性,防止发送的报文被篡改。32.采用冒泡排序算法对序列(49,38,65,97,76,13,27,49)进行非降序排序,两趟后的序列为(

)。

(分数:1.00)

A.(49,38,65,13,27,49,76,97)

B.(38,49,65,76,13,27,49,97)

C.(38,49,65,13,27,49,76,97)

D.(49,38,65,97,76,13,27,49)解析:冒泡排序算法的原理如下:1、比较相邻的元素。如果第一个比第二个大,就交换他们两个。2、对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。3、针对所有的元素重复以上的步骤,除了最后一个。4.、持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。根据以上步骤,两趟后的序列为:(38,49,65,13,27,49,76,97)33.在设计模块M和模块N时,(

)是最佳的设计。

(分数:1.00)

A.M和N通过通信模块传送数据

B.M

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论