2022年软考-软件设计师考试题库及全真模拟冲刺卷37(附答案带详解)

上传人:住在****她 文档编号:98697656 上传时间:2022-05-30 格式:DOCX 页数:26 大小:113.40KB
返回 下载 相关 举报
2022年软考-软件设计师考试题库及全真模拟冲刺卷37(附答案带详解)_第1页
第1页 / 共26页
2022年软考-软件设计师考试题库及全真模拟冲刺卷37(附答案带详解)_第2页
第2页 / 共26页
2022年软考-软件设计师考试题库及全真模拟冲刺卷37(附答案带详解)_第3页
第3页 / 共26页
点击查看更多>>
资源描述
2022年软考-软件设计师考试题库及全真模拟冲刺卷(附答案带详解)1. 单选题X公司接受Y公司的委托开发了一款应用软件,双方没有订立任何书面合同。在此情形下,()享有该软件的著作权。问题1选项A.X、Y公司共同B.X公司C.Y公司D.X、Y公司均不【答案】B【解析】考查委托开发的情况。有合同约定,著作权归委托方,那么就归属委托方;而在合同中未约定著作权归属,归创作方。对于题干描述说明未签订书面合同,则该著作权归创作方,(X公司接受Y公司的委托),即创作方X公司。2. 单选题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 theyve 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 dont.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,youll find( )patterns of classes and communicating objects in many object-oriented systems.问题1选项A.runnableB.rightC.reusableD.pertinent问题2选项A.clearB.generalC.personalizedD.customized问题3选项A.excitedB.shockenC.surprisedD.overwhelmed问题4选项A.toolB.componentC.systemD.solution问题5选项A.recurringB.rightC.experiencedD.past【答案】第1题:C第2题:B第3题:D第4题:D第5题:A【解析】设计面向对象的软件很难,而设计(可复用的)面向对象软件就更难了。你必须找到合适的(相关的)对象,以适当的粒度将它们划分为类,定义类接口和继承,并在它们之间建立关键关系。你的设计应该针对眼前的问题,但(一般 )足以解决未来的问题和要求。你也要避免重新设计,或者至少最小化它。有经验的面向对象设计师会告诉你,一个可重用和灵活的设计是很难第一次就“正确”的。在设计完成之前,他们通常会尝试多次重复使用,每次都是这样。然而,有经验的面向对象设计师确实能做出好的设计。同时,新的设计师们对可用的选项感到不安(第三题选项不知所措的意思),他们倾向于使用以前使用的非面向对象技术。电影要花很长时间才能了解好的面向对象的设计。经验丰富的设计师显然知道一些缺乏经验的东西。它是什么?有一件事专家设计师知道不能做的就是从第一原理解决每一个问题。相反,他们选择了过去对他们有效的解决方案。当他们找到一个好的(解决方案)。他们一次又一次地使用它。这样的经验是他们成为专家的部分原因。因此,您将在许多面向对象系统中找到第五题个类和通信对象的模式。A. runnable可运行的B.right对的C. reusable可复用的D. pertinent中肯的,相关的A. clear清除B. general总则C. personalized个性化D.customized定制A. excited兴奋B. shocken 震惊C. surprised惊讶于D. overwhelmed不知所措A.tool工具B. component组成部分C. system系统D. solution解决方案A.recurring循环B.right是吗C.experienced经验丰富D.past过去3. 案例题阅读下列说明和Java代码,将应填入(n)处的字句写在题纸的对应栏内。【说明】享元(flyweight)模式主要用于减少创建对象的数量,以低内存占用,提高性能。现要开发一个网络围棋程序允许多个玩家联机下棋。由于只有一台服务器,为节内存空间,采用享元模式实现该程序,得到如图6-1所的类图。图6-1 类图【Java代码】import java.util.*:enum PieceColor BLACK,WHITE棋子颜色class PiecePos棋子位置private intx;private int y;pubic PiecePos(int a,int b)x=a;y=b;public int getX( )return x;public int getY( )return y; abstract class Piece棋子定义protected PieceColor mcolor;颜色protected Piecemopos mpos;位置public Piece(PieceColor,color PiecePos pos)m_color=color;mpos=pos;(1);class BlackPiece extends Piecepublic BlackPiece(PieceColor color,PiecePos pos)super(color,pos);public void draw ( ) System out println(draw a blackpiece); class WhitePiece extends Piecepublic WhitePiece(PieceColor color,PiecePos pos)super(color,pos);public void draw( ) System.out.println(draw a white piece); class PieceBoard棋盘上已有的棋子private static final ArrayListm_arrayPiece=new ArrayListprivate String mblackName;黑方名称private String mwhiteName;白方名称public PieceBoard(String black,String white)m_blackName=black;m_whiteName=white;一步棋,在棋盘上放一颗棋子public void SetePiece(PieceColor color,PiecePos pos)(3)piece=null;if(colorPieceColor.BLACK)放黑子piecenew BlackPiece(color,pos);获取一颗黑子Systemoutprintln(mblackName在位置(posgetX( )+,+pos.getY( )+);(4) ;else放白子piecenew WhitePiece(color,pos);获取一颗白子Systemoutprintln(m whiteName在位置(posgetX0),+pos.getYO+);(5) ;m_arrayPiece.add(piece);【答案】(1)public abstract void draw( )(2)Piece(3)Piece(4)piece.draw( )(5)piece.draw( )【解析】对于第一空,可知该空需要填写的是 Piece类里面的方法,对于其方法在图中都无法找出,可以根据其实现类(BlackPiece和WhitePiece类)来看,对应得是方法public void draw( ),又由于其在抽象类Piece里面,所以是抽象方法,需要加上关键词abstract,则为public abstract void draw( )对于第二空,可知该空填写的是动态数组Arraylist的泛型,里面填写得应该是对应的m_arrayPiece的类型,用类进行修饰,可知其属于Piece类,填写的应该是Piece对于第三空,可知该空填写的是对象创建的声明对象过程,格式应该为类名 对象名称=null,可知该对象piece对应的类是Piece(类名字母大写)对于第四空和第五空,根据注释来看,是放黑子和白子的过程,已知实例化该对象piece,具体的放黑子和白子过程,都需要调用draw()方法来指向,故 第4空和第5空填写的应该都是piece.draw( )4. 单选题软件详细设计阶段的主要任务不包括( )。问题1选项A.数据结构设计B.算法设计C.模块之间的接口设计D.数据库的物理设计【答案】C【解析】软件详细设计阶段的主要任务包括:对模块内的数据结构进行设计;对数据库进行物理设计;对每个模块进行详细的算法设计;代码设计、输入/输出设计、用户界面设计等其他设计。软件概要设计阶段的主要任务包括(1) 软件系统总体结构设计,将系统划分成模块;确定每个模块的功能;确定模块之间的调用关系;确定模块之间的接口,即模块之间传递的信息;评价模块结构的质量。(2) 数据结构及数据库设计。本题A、B、D属于详细设计阶段的任务,C选项属于概要设计阶段的任务,本题选择C选项。5. 单选题Regardless of how well designed, constructed, and tested a system or application may be, errors or bugs will inevitably occur. Once a system has been( ),it enters operations and support.Systems support is the ongoing technical support for user, as well as the maintenance required to fix any errors, omissions,or new requirements that may arise. Before an information system can be( ), it must be in operation. System operation is the day-to-day, week-to-week, month-to-month, and year-t-year( )of an information systems business processes and application programs.Unlike systems analysis, design, and implementation, systems support cannot sensibly be( )into actual phases that a support project must perform. Rather, systems support consists of four ongoing activities that are program maintenance, system recovery, technical support, and system enhancement.Each activity is a type of support project that is( )by a particular problem,event, or opportunity encountered with the implemented system.问题1选项A.designedB.implementedC.investigatedD.analyzed问题2选项A.supportedB.testedC.implementedD.constructed问题3选项A.constructionB.maintenanceC.executionD.implementation问题4选项A.brokeB.formedC.composedD.decomposed问题5选项A.triggeredB.leadedC.causedD.produced【答案】第1题:B第2题:A第3题:C第4题:D第5题:A【解析】第1题: 无论系统或应用程序设计、构造和测试得多么完善,错误或故障总是会不可避免地出现。一旦一个系统实现了,这个系统就进入运行和支持阶段。 系统支持是对用户的不间断的技术支持以及改正错误、遗漏或者可能产生的新需求所需的维护。在信息系统可以被支持之前,它必须首先投入运行。系统运行是信息系统的业务过程和应用程序逐日的、逐周的、逐月的和逐年的执行。 不像系统分析、设计和实现那样,系统支持不能明显地分解成一些系统支持项目必须执行的任务阶段。相反,系统支持包括4个进行中的活动,这些活动是程序维护、系统恢复、技术支持和系统改进。每个活动都是一类系统支持项目,这些活动由已经实现的系统遇到的特定问题、事件或机会触发。A、 设计B、 实施C、 调查D、 分析A、支持B、测试C、实施D、建造A、结构B、维护C、执行D、实施A、划分B、形成C、组成D、分解A、触发B、导致C、引起D、产生第2题:第3题:第4题:第5题:6. 单选题页面的标记对中( )用于表示网页代码的起始和终止。问题1选项A.B.C.D.【答案】A【解析】考查关于html相关知识。标签限定了文档的开始点和结束点,在它们之间是文档的头部和主体。标签就是我们常说的头部标签,在与之间是用来存放一个文档的头部元素的主体标签,body 元素定义文档的主体。 标签位于文档的头部,不包含任何内容。 标签的属性定义了与文档相关联的名称/值对。 7. 单选题某企业信息系统采用分布式数据库系统。“当某一场地故障时, 系统可以使用其他场地上的副本而不至于使整个系统瘫痪”称为分布式数据库的( )。问题1选项A.共享性B.自治性C.可用性D.分布性【答案】C【解析】本题考查的是分布式数据库的基本概念。在分布式数据库系统中,共享性是指数据存储在不同的结点数据共享;自治性是指每个结点对本地数据都能独立管理;可用性是指当某一场地故障时,系统可以使用其他场地上的副本而不至于使整个系统瘫痪;分布性是指在不同场地上的存储。本题选择C选项。8. 单选题n个关键码构成的序列k1,k2, .Kn当且仅当满足下列关系时称其为堆。以下关键码序列中,() 不是堆。问题1选项A.15,25,21,53,73, 65,33B.15,25,21,33,73,65,53C.73,65,25,21,15,53,33D.73,65,25,33,53,15,21【答案】C【解析】本题考查堆排序的算法问题。堆分为大顶堆(根节点大于左孩子和右孩子节点)和小顶堆(根节点小于左孩子节点和右孩子节点)。根据选项来看,共7个节点,应该是3层的满二叉树,符号堆的有A,B,D三个选项。仅有C选项73,65,25,21,15,53,33,73作为根节点,根大于其左孩子节点65和右孩子节点25都,是大顶堆的构造,第二层65作为左子树的根节点,大于了其左孩子节点21和右孩子节点15,符合大顶堆的构造;25作为右子树的根节点,却小于了其左孩子节点53和右孩子节点33,不符合大顶堆的构造了,故其不是堆。9. 单选题在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满减等不同促销活动,则适合采用()模式。问题1选项A.策略(Strategy)B.访问者(Visitor)C.观察者(Observer)D.中介者(Mediator)【答案】A【解析】在设计某购物中心的收银软件系统时,要求能够支持在不同时期推出打折、返利、满减等不同促销活动,收银软件系统的计入规则有:打折、返利、满减三种不同的策略,每种策略之间封装起来,可以相互替换,使它们可以独立的变换,属于典型的策略模式。10. 单选题某有限自动机的状态转换图如下图所示,该自动机可识别( )。问题1选项A.1001B.1100C.1010D.0101【答案】B【解析】本题考查的是有限自动机相关知识。A选项从s0出发,1001到达s1,没有到达终态s2,不能被自动机识别。B选项从s0出发,1100成功到达终态s2,可以被自动机识别。本题选择B选项。C选项从s0出发,1010到达s0,没有到达终态s2,不能被自动机识别。A选项从s0出发,0101到达s1,没有到达终态s2,不能被自动机识别。11. 单选题按照我国著作权法的权利保护期,以下权利中,( )受到永久保护。问题1选项A.发表权B.修改权C.复制权D.发行权【答案】B【解析】本题考查著作权的保护期限问题。著作权中修改权、署名权、保护作品完整权都是永久保护的。故本题正确答案选择B选项。12. 单选题用白盒测试技术对下面流程图进行测试,设计的测试用例如下表所示。至少采用测试用例( )才可以实现语句覆盖;至少采用测试用例( )才可以实现路径覆盖。问题1选项A.B.C.D.问题2选项A.B.C.D.)【答案】第1题:A第2题:D【解析】第1题:本题考查软件工程软件测试问题。根据测试用例:用例可以满足覆盖所有语句,满足语句覆盖。用例可以满足路径ace,用例可以满足路径abd,用例可以满足路径abe,用例可以满足路径acd。所以满足路径覆盖需要测试用例。故正确答案选择A、D选项。第2题:13. 单选题在风险管理中,通常需要进行风险监测,其目的不包括( )。问题1选项A.消除风险B.评估所预测的风险是否发生C.保证正确实施了风险缓解步骤D.收集用于后续进行风险分析的信息【答案】A【解析】风险监测主要是对风险进行预测,评估,收集相关的信息,用来防止风险,从而做好相关的防范措施。对于评估所预测的风险是否发生、保证正确实施了风险缓解步骤、收集用于后续进行风险分析的信息都是风险监测的目的至于A选项消除风险,风险是无法被消除掉的,只能尽量避免。14. 单选题在某系统中,不同组(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,D15. 单选题用C/C+语言为某个应用编写的程序,经过( )后形成可执行程序。问题1选项A.预处理、编译、汇编、链接B.编译、预处理、汇编、链接C.汇编、预处理、链接、编译D.链接、预处理、编译、汇编【答案】A【解析】本题考查汇编语言的执行过程。对于编译型语言,处理过程为:预处理-编译-汇编-链接。故正确答案选择A选项。16. 单选题对数组A=(2,8,7,1,3,5,6,4)用快速排序算法的划分方法进行一趟划分后得到的数组A为( )(非递减排序,以最后一个元素为基准元素)。进行一趟划分的计算时间为( )。问题1选项A.(1,2,8,7,3,5,6,4)B.(1,2,3,4,8,7,5,6)C.(2,3,1,4,7,5,6,8)D.(2,1,3,4,8,7,5,6)问题2选项A.O(1)B.O(Ign)C.O(n)D.O(nlgn)【答案】第1题:C第2题:C【解析】第1题:本题考查的是排序算法。本题根据快速排序的过程,首先选定基准元素为最后一个元素(题干给出的要求),下面进行排序过程:(1)基准元素4与另一端待排第一个元素2进行比较,满足非递减,不需要交换;(2)基准元素4与另一端待排第一个元素8进行比较,不满足非递减,交换位置,此时序列为(2,4,7,1,3,5,6,8);(3)基准元素4与另一端待排第一个元素6进行比较,满足非递减,不需要交换;(4)基准元素4与另一端待排第一个元素5进行比较,满足非递减,不需要交换;(5)基准元素4与另一端待排第一个元素3进行比较,不满足非递减,交换位置,此时序列为(2,3,7,1,4,5,6,8);(6)基准元素4与另一端待排第一个元素7进行比较,不满足非递减,交换位置,此时序列为(2,3,4,1,7,5,6,8);(7)基准元素4与另一端待排第一个元素1进行比较,不满足非递减,交换位置,此时序列为(2,3,1,4,7,5,6,8)。综上,本题第一空选择C选项。因为一趟划分的过程会与整个序列n个元素进行比较,因此一趟划分的时间复杂度为O(n),第二空选择C选项。第2题:17. 单选题UML图中,对象图展现了( ),( )所示对象图与下图所示类图不一致。问题1选项A.一组对象、接口、协作和它们之间的关系B.一组用例、参与者以及它们之间的关系C.某一时刻一组对象以及它们之间的关系D.以时间顺序组织的对象之间的交互活动问题2选项A.B.C.D.【答案】第1题:C第2题:D【解析】第1题:本题考查UML图示。对象图:展现了某一个时刻一组对象以及它们之间的关系。类图:展现了一组对象、接口、协作和它们之间的关系。用例图:展现了一组用例、参与者以及它们之间的关系。序列图:是场景的图形化表示,描述了以时间顺序组织的对象之间的交互活动。多重度:图示表示的是1个A可以对应多个B,1个B只能对应1个A 。第二空D图示错误。故正确答案选择C,D第2题:18. 单选题假设计算机系统的页面大小为4KB,进程P的页面变换表如下表所示。若P要访问的逻辑地址为十六进制3C20H,那么该逻辑地址经过地址变换后,其物理地址应为( )。问题1选项A.2048HB.3C20HC.5C20HD.6C20H【答案】D【解析】本题考查的是页式存储相关的内容。1、根据页面大小4K(=212)可知,页内地址长度需要12位二进制表示。2、根据逻辑地址3C20H,其中第12位二进制为页内地址,即对应十六进制第3位C20H为页内地址,剩余高位3H为页号,转换为十进制结果为3。3、查表可得,页号3对应的物理块号为6(即十六进制6H),再拼接原页内地址C20H,即为最终的物理地址6C20H。本题选择D选项。19. 单选题二叉树的高度是指其层数, 空二叉树的高度为0,仅有根结点的二叉树高度为1,若某二叉树中共有1024个结点,则该二叉树的高度是整数区间( )中的任一值。问题1选项A.(10, 1024)B.10, 1024C.(11, 1024)D.11, 1024【答案】D【解析】本题考查关于二叉树的构造问题。根据题干描述, 空二叉树的高度为0,仅有根结点的二叉树高度为1,当若某二叉树中共有1024个结点,求其取值范围?我们不妨求出取值范围的极限值,当1024个结点都为根结点的时候,表示1024个二叉树高度为1,高度累计为1024,区间能够取到1024,属于闭区间,排除A,C再求出其最小值的情况,最小值应该是按照满二叉树进行排列,对于二叉树的规律如下:第一层的结点树20=1,第二层21=2,第3层22=4,依次类推。对于1024而言,210=1024,所以我们不能取到11层,应该先到第10层29=512,此时10层共累计的节点有:20+21+.+29=1023,共有1024还缺少1个结点,只能存放到第11层,第11层仅有1个结点,但是它的层次已经到了11层,所以能取到11,属于闭区间,排除B选项,故表达式取值范围应该是11, 1024。20. 单选题下列关于结构化分析方法的数据字典中加工逻辑的叙述中,不正确的是( )。问题1选项A.对每一个基本加工,应该有一个加工逻辑B.加工逻辑描述输入数据流变换位输出数据的加工规则C.加工逻辑必须描述实现加工的数据结构和算法D.结构化语言,判定树和判定表可以用来表示加工逻辑【答案】C【解析】本题是对数据字典中加工逻辑相关概念的考查。数据字典包含4类条目:数据流、数据项、数据存储和基本加工。其中基本加工条目是用来说明DFD中基本加工的处理逻辑的,由于下层的基本加工是由上层加工分解而来,只要有了基本加工的说明就可理解其他加工。对每一个基本加工,都应该有一个加工逻辑来说明。A选项描述正确。加工描述了输入数据流到输出数据流之间的编号,也就是输入数据流经过什么处理后变成了输出数据流。加工逻辑对其进行说明,也就是描述了改过程的加工规则,B选项描述正确。加工逻辑是位于需求分析阶段,此时具体的数据结构和算法并没有进行设计,C选项描述错误。本题选择C选项。常用的加工逻辑描述方法有结构化语言、判定表和判定树三种,D选项描述正确。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 考试试卷


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!