2021年软考软件设计师模拟试题及答案解析

上传人:m**** 文档编号:122049741 上传时间:2022-07-20 格式:DOC 页数:14 大小:48KB
返回 下载 相关 举报
2021年软考软件设计师模拟试题及答案解析_第1页
第1页 / 共14页
2021年软考软件设计师模拟试题及答案解析_第2页
第2页 / 共14页
2021年软考软件设计师模拟试题及答案解析_第3页
第3页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
2021 年软考软件设计师模拟试题及答案解析41 .不是C语言提供的合法关键字是(46)(45)A. switchB. beginC. caseD. default参考答案:(46)B。解析:因C语言的关键字表中没有begin,它不是C语言的关 键字。所以解答是B。42.下列字符列中,能作为单个标识符是(47)(47)A. ?aB. a=2C. a.3D. a_3参考答案:(47)D。解析:在 C 语言中,规定标识符是这样一种字符序列,由英文 字母或下线字符开始,后接任1 个英文字母、下线字符和数字符组 成。所以问题所列的字符列只有a_3是标识符,其余都丨是标识 符,一个是由字符?开头、一个中间有字符=,另一个有字 符.。所以解答是D。43.在C语言中,下列说法中错误的是(48)(47)A. 函数定义可以分为两个部分:函数说明部分和函数体B. 主函数可以调用任何非主函数C. 任何非主函数可以调用其它任何非主函数D. 程序可以从任何函数开始执行参考答案:(48)D。解析:每个C函数的定义分两部分,函数说明部分和函数体, 所以叙述是正确的叙述。C语言中,函数可以递归调用,主函数 可以调用程序中的任何函数,当然可以调用任何非主教的其它函 数,所以叙述是一个正确的叙述。同样理由,叙述也是正确 的。C语言规,C程序只有一个主函数,并总是从主函数开始执行, 不能从非主函数开始执行。所以,说程可以从任何函数开始执行是 错误的。所以解答是D。44. 为了直观地分析系统的动作,从特定的视点出发描述系统 的行为,需要采用动态分析的方法。其中,(49)适用于描述与分析相互独立、协同操作的处理系统,也就 是并发执行的处理系统。(49) A.状态迁移图B. 时序图C. Petri 网D. HIP 0 图参考答案:(49)C。解析:为了直观地分析系统的动作,从特定的视点出发描述系 统的行为,需要采用动态分析的方法。常用的动态分析方法有状态 迁移图、时序图和Petri网。状态迁移图是描述系统的状态如何响应外部的信号进行推移的 一种图形表示。时序图用于对比在系统中处理时间的时序与相应的处理时间, 进行系统分析。Petri网方法本来是表达异步系统的控制规则的图形表示方法,现在已经广泛地应用于硬件与软件系统的开发中,它适用于描述与分析相互独立、协同操作的处理系统,也就是并发执行的处理 系统。在结构化设计中,分层输入-处理-输出图(HIPO图)既可以描述 软件总的模块层次结构,又可以描述每个模块的输入/输出关系、处 理内容、模块的内部数据和模块的调用关系。它是系统设计的重要 成果,也是系统实施阶段编制程序设计任务书和进行程序设计的出 发点和依据。46.函数调用语句“f(el, e2), (e3, e4, e5); ”中参数的个 数是(51)(51) A. 1B. 2C. 4D. 5参考答案:(51) B。解析:上述函数调用中,(e1, e2)和(e3, e4, e5)是两个带括 号的表达式,所以函数调用只提供两个实参,其中第一个实参先计 算el的值,然后计算e2,并以e2的值为实参。第二个实参顺序计 算e3,e4,e5,并以e5的值为实参。所以解答是B。47. C语言中,函数的隐含存储类型是(52)(52) A. autoB. staticC. externD. 无存储类别参考答案:(52)C。解析:由于C函数内不能再定义函数,C函数的存储类型只能 是静态的或外部的之一。若定义函数时不指定存储类型是静态的, 则它的存储类型就是外部的(extern),即函数允许被程序的其它函 数调用。所以解答是C。48. 测试是保证软件质量的重要手段。根据国家标准GB 8566- 88计算机软件开发规范的规定,应该在 (53)阶段制定系统测 试计划。(53) A.需求分析B. 概要设计C. 详细设计D. 系统测试参考答案:(53)A49.以下对C语言函数的有关描述中,正确的是(54)(54) A.在C语言中,调用函数时,只能把实参的值传递给形 参,形参的值不能传递给实参B. C函数既可以嵌套定义,又可以递归调用C. 函数必须有返回值,否则不能定义成函数D. C程序中,有调用关系的所有函数必须放在同一个源程序文 件中参考答案:(54) A。解析:C语言规定,调用函数时,只能把实参的值传递给函数 的形参。函数调用时,形参从实参表达式得到初值,报参也是函数 的一种局部变量,其值可以改变,但形参的值不能传回给对应的实 参。当函数设置非指针类型的形参时,实参可以是同类型的一般表 达式;当函数设置指针类型的形参时,对应的实参也必须是同类型的 指针表达式。所以叙述A是正确的。C语言虽可以递归调用,但同 时规定,在函数内不能再定义函数,所以叙述B是错误的。通常C 函数会有返回值,但也可以没有返回值。有许多情况,函数的执行 是完成某种预定的工作,并没有返回值,所以叙述C是不正确的。 在C程序中,如函数未指定是静态的,则就是外部的,能让别的文 件中的函数调用。但函数要调用别的文件中的函数,在调用代码之 前,需对它作说明,所以叙述D也是不正确的。正确的解答只有A。50.某软件产品在应用初期运行在Windows 2000环境中。现因 某种原因,该软件需要在Linux环境中运行,而且必须完成相同的 功能。为适应该需求,软件本身需要进行修改,而所需修改的工作 量取决于该软件的 (55)。(55) A.可复用性B. 可维护性C. 可移植性D. 可扩充性参考答案:(55)C。解析:软件的可复用性指软件或软件的部件能被再次用于其他 应用中的程度。软件复用性取决于其模块独立性、通用性和数据共 享性等。软件的可维护性是指一个软件模块是否容易修改、更新和扩 展,即在不影响系统其他部分的情况下修改现有系统功能中问题或 缺陷的能力。软件的可移植性指将软件系统从一个计算机系统或操作系统移 植到另一种计算机系统或操作系统中运行时所需工作量的大小。可 移植性取决于系统中硬件设备的特征、软件系统的特点和开发环 境,以及系统分析与设计中关于通用性、软件独立性和可扩充性等 方面的考虑。软件的可扩充性指软件的体系结构、数据设计和过程设计的可 扩充程度。可扩充性影响着软件的灵活性和可移植性。由以上分析可知,该软件产品从Windows 2000环境中迁移到 Linux环境中运行,为完成相同的功能,软件本身需要进行修改, 而所需修改的工作量取决于该软件产品的可移植性。51.进程的五态模型包括运行状态、活跃就绪状态、静止就绪状态、活跃阻塞状态和静止阻塞状态。针对图5的进程五态模型,为了确保进程调度的正常工作,(a)、(b)和(c)的状态分别为(56) 。软件设计师练习试题及答案解析图6 进程的五态模型图(56) A.静止就绪、静止阻塞和活跃阻塞B. 静止就绪、活跃阻塞和静止阻塞C. 活跃阻塞、静止就绪和静止阻塞D. 活跃阻塞、静止阻塞和静止就绪参考答案:(56)D。解析:在多道程序系统中,进程在处理器上交替运行,在运 行、就绪和阻塞 3 种基本状态之间不断地发生变化。由于进程的不 断创建,系统资源(特别是主存资源)已不能满足进程运行的要求。 此时就必须将某些进程挂起,对换到磁盘镜像区,暂时不参与进程 调度,以平衡系统负载的目的。如果系统出现故障,或者是用户调 试程序,也可能需要将进程挂起检查问题。在图6具有挂起状态的进程状态及其转换图中,活跃就绪是指 进程在主存并且可被调度的状态。(1)空缺处各选项中,静止就绪是 指进程被对换到辅存时的就绪状态,是不能被直接调度的状态,只 有当主存中没有活跃就绪态进程,或者是挂起态进程具有更高的优 先级,系统将把挂起就绪态进程调回主存并转换为活跃就绪。因 此,图6的(c)空缺处应填入“静止就绪”这一状态。活跃阻塞是指进程在主存中。一旦等待的事件产生,便进入活跃就绪状态。因此,图6的(a)空缺处应填入“活跃阻塞”。静止阻塞是指进程对换到辅存时的阻塞状态。一旦等待的事件产生,便进入静止就绪状态。故图6的(b)空缺处应填入“静止阻 塞”。由以上分析可知,(56)空缺处的正确答案是选项D。另外,对于一张完整的进程五态模型图,则需在图3-4模型图 中增加一条从“运行”态到“活跃阻塞”态的边,其状态转换原因 是“等待”事件(如I/O请求)发生,以及增加一条从“运行”态到 “静止就绪”态的边,其状态转换原因是“挂起”。52.基于构件的开发(CBD)模型,融合了 (57)模型的许多特 征。该模型本质是演化的,采用迭代方法开发软件。(57) A.瀑布B. 螺旋C. 喷泉D. 快速应用开发(RAD)参考答案:(57)B。解析:螺旋模型是演化软件过程模型的一种,最早由Boehm提 出,它将原型实现的迭代特征与线性顺序模型中控制的和系统化的 方面结合起来,使软件增量版本的快速开发成为可能。在螺旋模型 中,软件开发是一系列的增量发布。面向对象技术为软件工程的基于构件的过程模型提供了技术框 架。基于构件的开发模型融合了螺旋模型的许多特征。它本质上是 演化型的,要求软件创建迭代方法。基于构件的开发模型是利用预先包装好的软件构件来构造应用 的。统一软件开发(RUP)过程是在产业界提出的一系列基于构件的开 发模型的代表。53.设有定义“in ta=3, b, *p=&a;”,则下列语句中使b不为3的语句是(58)(58) A. b=*&a;B. b=*p;C. b=a;D. b=*a;参考答案:(58)D。解析:定义有inta=3,b,*p=&a;对b赋值的表达式有*&、*p、a、*a。引用变量。的值有两种方法,一是直接引用a,二是通 过a的指针间接引用a。对于后者,又有多种表达方法,通过指向a 的指针p,间接引用a的内容,如*p。或通过求地址运算符由变量a 得到其指针&a,再由这指针表达式间接引用a的内容,如*&a。所以 表达式*&a、*卩和a都能引用变量a的值,而使b的值为3。而表达 式。a是错误的,因为a不是指针变量,不能对它施行取内容运算 符。所以解答是D。54.设指针x指向的整型变量值为万,则pri ntf(%d ,+*x);的输出是(59)(59) A. 23B. 24C. 25D. 26参考答案:(59)D。解析:若指针变量x指向某个变量,例如指向变量v,并且变 量V的值是25,则表达式+*x的值是26。这是因为表达式的计算 顺序可加圆括号表达成(+(*x),首先是*x,是对X所指变量V的 引用,所以+*X就是+V。+V是先让变量V增1,并以增至后的V 的值为表达式+V的结果,所以其值是26。所以解答是D。55 .若有说明:“in ti,j=7, *p=&i;”,则与“i二j; ”等价的语 句是(60)(59)A. i=*p;B. *P=*&j;C. i=&j;D. i=*p;参考答案:(60)B。解析:指针变量P指向变量i时,表达式i=*p等价于i二i;表 达式*p=*&j等价于i=j;而表达式i二&j企图将整型变量的指针赋给 整型变量,这是错误的;表达式i=*p也是一种错误的表达式。p是 指针,*卩是卩所指变量j, *p是企图将整型变量j当作指针,并 想通过j间接引用某个变量。所以解答是B。56.以下关于软件质量度量指标的叙述中,说法正确的是(61) 。(32) A.正确性就是用每千行代码的故障(fault)数来度量B.软件完整性是指软件功能与需求符合的程度C.软件维护的工作量比开发阶段的工作量小D. 可用性与用户的操作效率和主观评价有关参考答案:(61)D。解析:最主要的软件质量度量指标有正确性、可维护性、完整 性和可用性。软件的正确性是指软件完成所需功能的程度,尽管这 种程度与每千行代码的故障数有关,但不完全等同。软件完整性是指软件在安全方面抗攻击的能力。软件维护的工作量比开发阶段的工作量大,通常的估计是,开 发阶段的工作量占软件生命期整个工作量的 40%,而维护阶段的工 作量则占 60%,甚至更多。软件可用性用来度量软件的“用户友好性”,可以从学会操 作软件所需的体力和智力、对系统的使用达到中等效率所需的时 间、当系统由一个中等效率的人使用时测量到的生产率增长值和 用户对系统的主观评价等4个方面来度量可用性。
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 办公文档 > 模板表格


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

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


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