软件设计师模拟题及答案解析第三十五套_第1页
软件设计师模拟题及答案解析第三十五套_第2页
软件设计师模拟题及答案解析第三十五套_第3页
软件设计师模拟题及答案解析第三十五套_第4页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、软件设计师模拟题及答案解析第三十五套 MPEG视频中的时间冗余信息可以采用 _(1)_ 的方法来进行压缩编码。(1)A. 帧间预测和变换编码B. 霍大曼编码和运动补偿C.变换编码和行程编码D.帧间预测和运动补偿假定每一车次具有唯一的始发站和终点站。如果实体“列车时刻表”属性为车次、始发站、发车时间、终点站、到达时间,该实体的主键是_(2)_; 如果实体“列车运行表”属性为车次、日期、发车时间、到达时间,该实体的主键是 _(3)_ 。通常情况下,上述“列车时刻表”和“列车运行表”两实体型间_(4)_联系。(2)A.(3)A.(4)A.车次车次不存在B. 始发站C.发车时间D.车次,始发站B. 始

2、发站C.发车时间D.车次,日期B. 存在一对一C.存在一对多D. 存在多对多参考答案: 1.D 2.A 3.D 4.COMT定义了三种模型来描述系统。_(1)_ 可以用状态图来表示 ;_(2)_ 可以用数据流图来表示。 _(3)_ 为上述两种模型提供了基本的框架。(1)A. 对象模型B. 功能模型C.动态模型D.类模型(2)A. 对象模型B. 功能模型C.动态模型D.类模型(3)A. 对象模型B. 功能模型C.动态模型D.类模型采用动态规划策略求解问题的显著特征是满足最优性原理,其含义是 _(4)_ 。(4)A. 当前所做出的决策不会影响后面的决策B. 原问题的最优解包含其子问题的最优解C.问

3、题可以找到最优解,但利用贪心法不能找到最优解D.每次决策必须是当前看来最优的决策才可以找到最优解参考答案:CBAB关系模式 R(U,F) ,其中 U=(W,X,Y,Z) ,F=WXY,W X,X, Z,yVw 。关系模式 R的候选码是 _(1)_ , _(2)_ 是无损连接并保持函数依赖的分解。(1)A.W 和YB.WYC.WXD.WZ(2)A. =R1(WY), R2(XZ)B. =R1(WZ), R2(XY) C.=R1(WXY),R2(XZ)D.=R1(WX), R2(YZ)类的实例化过程是一种实例的合成过程,而不仅仅是根据单个类型进行的空间分配、初始化和绑定。指导编译程序进行这种合成的

4、是_(3)_ 。(3)A. 类层次结构B. 实例的个数C.多态的种类D.每个实例的初始状态重置的基本思想是通过_(4)_ 机制的支持,使得子类在继承父类界面定义的前提下,用适合于自己要求的实现去置换父类中的相应实现。(4)A. 静态绑定B. 对象引用C.类型匹配D.动态绑定参考答案:ACAD1. 语句 "printf("%dn"strlen("atsnol21");"的输出结果是 ( )1110982. 函数调用“ strcat(strcpy(strl, str2),str3) ”的功能是 ( )将字符串 strl复制到字符串 str

5、2中后再连接到字符串 str3之后将字符串 strl连接到字符串 str2中后再复制到字符率 str3之后将字符串 str2复制到字符串 strl中后再将字符串 str3 连接到字符串strl之后将字符串 str2 连接到字符率 strl之后再将字符串 strl复制到字符串str3 中【解】字符串中的字符可以是一般的普通字符,也可以是由反斜杠字符开头的转义字符。在字符串 "absno1211" 中,有三个转义字符,它们是 n 、1 、 ,所以该字符串的有效字符个数是 9。所以正确的回答是。【解】函数调用 strcat(s1,s2) 是将 s2字符串复制连接到 s1字符串之后

6、,使 s1字符串变得更长。函数调用strcpy(s1, s2) 是将 s2 字符串复制到 s1,使 s1字符串的内容与s2字符串的内容相同。函数调用strcat(strcpy(strl,str2), str3)是先执行 strcpy(strl,str2),然后再执行strcat(strl,str3),所以其功能是将字符串str2复制到字符串strl中,然后再将字符串str3复制连接到字符串strl之后。正确的选择是。1. 设有如下定义,则正确的叙述为 ( )char x="abcdefg"char y=a, b, c, d, e, f , g;数组 x和数组 y等价数组 x

7、和数组 y长度相同数组 X的长度大于数组 y的长度数组 X的长度小于数组 y的长度2. 根据变量定义“ static int b5, a3=1,2,3,4,5,6; ”, b4=_ , a12【解】不指定数组长度的字符数组定义,其所需要的字节数可由初始化中给出的值的个数确定。字符数组可以用字符串初始化,也可用字符逐个给字符数组的元素初始化。但用字符初始化时,尽管给出了字符串中的全部字符,还是不会自动有字符率结束字符。但字符串初始化自动会含有字符串的结束标记符,字符串初始化所需要的字节个数会比用同样多的字符初始化多1个字节。所以只有才是正确的。【解】系统规定,静态变量定义时,若末初始化,系统自动

8、给定二进制代码全 0的值。所以态数组 b的元素全为 0,当然包括 b4 也为几静态数组 a是二维数组,每行有三个元素,在初始化中结出了六个初值,所以数组 a有2 行。由于数组的元素按行顺序存储,并按行顺序初始化。前三个值是第一行,后三个元素 12 是第二行的第三列元素,也是 a的最后一个元素,所以其值是 6。1. 设有定义语句“ static int a34=1 ,2 ,3; ”则 all 值为 _,a21 的值为 _。2. 若在程序中用到“ putchar( ) ”函数时,应在程序开头写上包含命令 _,若在程序中用到“ strlen( )”函数时,应在程序开头写上包含命令_。【解】给二维数组

9、初始化时,可按行给出初值,并且每行可以只给前面部分的元素给出初值。系统规定,对哪些未给出初值的部分元素,系统自动置二进制代码全 0 的值。由于定义语句只给 a00 给定初值 l 、 al0 给定初值2、a20 给定初值 3。这样 , 其它元素都为 0值。所以, a1 1= 0,a21= 0。【解】putchar() 是系统提供的头文件 stdio.h 中定义的宏,所以程序要使用它,必须写上包含命令: #include 。函数 strlen() 是系统提供的字符串处理函数之一,字符串处理函数的函数原型说明和它们用到的有关常量、数据结构等,在系统提供的头文件tring.h中定义,所以使用该函数的程

10、序应在程序开头写上包含命令并 include 。41. 不是 C语言提供的合法关键字是 (46) (45)A. switchB. beginC. caseD. default参考答案: (46)B 。解析:因 C语言的关键字表中没有begin ,它不是 C语言的关键字。所以解答是 B。42. 下列字符列中,能作为单个标识符是 (47)(47)A. ?a B. a=2C. a.3 D.a_3参考答案: (47)D 。解析:在 C语言中,规定标识符是这样一种字符序列,由英文字母或下线字符开始,后接任 1个英文字母、下线字符和数字符组成。所以问题所列的字符列只有 a_3是标识符,其余都 l 是标识符

11、,一个是由字符?开头、一个中间有字符 =,另一个有字符 . 。所以解答是 D。43. 在C语言中,下列说法中错误的是 (48)(47)A.函数定义可以分为两个部分:函数说明部分和函数体B. 主函数可以调用任何非主函数C. 任何非主函数可以调用其它任何非主函数D. 程序可以从任何函数开始执行参考答案: (48)D 。解析:每个 C函数的定义分两部分,函数说明部分和函数体,所以叙述是正确的叙述。 C语言中,函数可以递归调用,主函数可以调用程序中的任何函数,当然可以调用任何非主教的其它函数,所以叙述是一个正确的叙述。同样理由,叙述也是正确的。C语言规, C程序只有一个主函数,并总是从主函数开始执行,

12、不能从非主函数开始执行。所以,说程可以从任何函数开始执行是错误的。所以解答是D。44. 为了直观地分析系统的动作,从特定的视点出发描述系统的行为,需要采用动态分析的方法。其中,(49) 适用于描述与分析相互独立、协同操作的处理系统,也就是并发执行的处理系统。(49) A. 状态迁移图B. 时序图C.Petri 网D.HIPO图参考答案: (49)C 。解析:为了直观地分析系统的动作,从特定的视点出发描述系统的行为,需要采用动态分析的方法。常用的动态分析方法有状态迁移图、时序图和Petri 网。状态迁移图是描述系统的状态如何响应外部的信号进行推移的一种图形表示。时序图用于对比在系统中处理时间的时

13、序与相应的处理时间,进行系统分析。Petri 网方法本来是表达异步系统的控制规则的图形表示方法,现在已经广泛地应用于硬件与软件系统的开发中,它适用于描述与分析相互独立、协同操作的处理系统,也就是并发执行的处理系统。在结构化设计中,分层输入- 处理 - 输出图 (HIPO图 ) 既可以描述软件总的模块层次结构,又可以描述每个模块的输入/ 输出关系、处理内容、模块的内部数据和模块的调用关系。它是系统设计的重要成果,也是系统实施阶段编制程序设计任务书和进行程序设计的出发点和依据。45. 图4中的程序由 A、B、C、D和E等5个模块组成,表 1模块之间的接口表中描述了这些模块之间的接口,每一个接口有一

14、个编号。此外,模块A、D和E都要引用一个专用数据区。那么A和 D之间耦合关系是(50)。(50) A. 标记耦合B. 内容耦合C.数据耦合D.公共耦合图 4表2 模块之间的接口表编 号参 数返 回 值1数据项数据项2数据项数据项3功能码无4无5无参考答案: (50)D 。解析:由于模块 A和模块 D都引用了专用数据区的内容,因此,模块A和D之间的耦合关系是公共耦合。46. 函数调用语句“ f(el,e2) , (e3 ,e4,e5); ”中参数的个数是(51)(51) A. 1B. 2 C. 4 D. 5参考答案: (51) B 。解析:上述函数调用中,(e1 ,e2) 和 (e3 ,e4,e

15、5) 是两个带括号的表达式,所以函数调用只提供两个实参,其中第一个实参先计算el 的值,然后计算 e2,并以 e2的值为实参。第二个实参顺序计算e3,e4,e5,并以 e5的值为实参。所以解答是 B。47. C 语言中,函数的隐含存储类型是 (52)(52)A. auto B. static C. externD. 无存储类别参考答案: (52)C 。解析:由于 C函数内不能再定义函数, C函数的存储类型只能是静态的或外部的之一。若定义函数时不指定存储类型是静态的,则它的存储类型就是外部的 (extern),即函数允许被程序的其它函数调用。所以解答是C。48. 测试是保证软件质量的重要手段。根

16、据国家标准GB8566-88计算机软件开发规范的规定,应该在(53)阶段制定系统测试计划。(53) A. 需求分析B. 概要设计C.详细设计D.系统测试参考答案: (53)A解析:根据国家标准 GB8566-88计算机软件开发规范的规定,单元测试是根据详细设计阶段给出的“规格说明书”在编码阶段完成的测试工作; 集成测试的计划是在概要设计阶段制订的; 系统测试计划应该在需求分析阶段就开始制订,并在设计阶段细化和完善,而不是等系统编码完成后才制订测试计划;而验收测试则检测产品是否符合最终用户的需求。49. 以下对 C语言函数的有关描述中,正确的是 (54)(54) A. 在C语言中,调用函数时,只

17、能把实参的值传递给形参,形参的值不能传递给实参B. C 函数既可以嵌套定义,又可以递归调用C. 函数必须有返回值,否则不能定义成函数D. C 程序中,有调用关系的所有函数必须放在同一个源程序文件中参考答案: (54) A 。解析: C语言规定,调用函数时,只能把实参的值传递给函数的形参。函数调用时,形参从实参表达式得到初值,报参也是函数的一种局部变量,其值可以改变,但形参的值不能传回给对应的实参。当函数设置非指针类型的形参时,实参可以是同类型的一般表达式; 当函数设置指针类型的形参时,对应的实参也必须是同类型的指针表达式。所以叙述A是正确的。 C语言虽可以递归调用,但同时规定,在函数内不能再定

18、义函数,所以叙述B是错误的。通常 C函数会有返回值,但也可以没有返回值。有许多情况,函数的执行是完成某种预定的工作,并没有返回值,所以叙述 C是不正确的。在 C程序中,如函数未指定是静态的,则就是外部的,能让别的文件中的函数调用。但函数要调用别的文件中的函数,在调用代码之前,需对它作说明,所以叙述 D也是不正确的。正确的解答只有 A。50. 某软件产品在应用初期运行在 Windows 2000环境中。现因某种原因,该软件需要在 Linux 环境中运行,而且必须完成相同的功能。为适应该需求,软件本身需要进行修改,而所需修改的工作量取决于该软件的(55) 。(55) A. 可复用性B. 可维护性C

19、.可移植性D.可扩充性参考答案: (55)C 。解析:软件的可复用性指软件或软件的部件能被再次用于其他应用中的程度。软件复用性取决于其模块独立性、通用性和数据共享性等。软件的可维护性是指一个软件模块是否容易修改、更新和扩展,即在不影响系统其他部分的情况下修改现有系统功能中问题或缺陷的能力。软件的可移植性指将软件系统从一个计算机系统或操作系统移植到另一种计算机系统或操作系统中运行时所需工作量的大小。可移植性取决于系统中硬件设备的特征、软件系统的特点和开发环境,以及系统分析与设计中关于通用性、软件独立性和可扩充性等方面的考虑。软件的可扩充性指软件的体系结构、数据设计和过程设计的可扩充程度。可扩充性

20、影响着软件的灵活性和可移植性。由以上分析可知,该软件产品从 Windows 2000环境中迁移到 Linux 环境中运行,为完成相同的功能,软件本身需要进行修改,而所需修改的工作量取决于该软件产品的可移植性。(56) A. 静止就绪、静止阻塞和活跃阻塞 B. 静止就绪、活跃阻塞和静止阻塞C.活跃阻塞、静止就绪和静止阻塞D.活跃阻塞、静止阻塞和静止就绪参考答案: (56)D 。解析:在多道程序系统中,进程在处理器上交替运行,在运行、就绪和阻塞 3种基本状态之间不断地发生变化。由于进程的不断创建,系统资源 ( 特别是主存资源 ) 已不能满足进程运行的要求。此时就必须将某些进程挂起,对换到磁盘镜像区

21、,暂时不参与进程调度,以平衡系统负载的目的。如果系统出现故障,或者是用户调试程序,也可能需要将进程挂起检查问题。在图 6具有挂起状态的进程状态及其转换图中,活跃就绪是指进程在主存并且可被调度的状态。 (1) 空缺处各选项中,静止就绪是指进程被对换到辅存时的就绪状态,是不能被直接调度的状态,只有当主存中没有活跃就绪态进程,或者是挂起态进程具有更高的优先级,系统将把挂起就绪态进程调回主存并转换为活跃就绪。因此,图 6的(c) 空缺处应填入“静止就绪”这一状态。活跃阻塞是指进程在主存中。一旦等待的事件产生,便进入活跃就绪状态。因此,图 6的(a) 空缺处应填入“活跃阻塞”。静止阻塞是指进程对换到辅存

22、时的阻塞状态。一旦等待的事件产生,便进入静止就绪状态。故图6的(b) 空缺处应填入“静止阻塞”。由以上分析可知, (56) 空缺处的正确答案是选项D。另外,对于一张完整的进程五态模型图,则需在图3-4 模型图中增加一条从“运行”态到“活跃阻塞”态的边,其状态转换原因是“等待”事件( 如I/O 请求 ) 发生,以及增加一条从“运行”态到“静止就绪”态的边,其状态转换原因是“挂起”。52. 基于构件的开发 (CBD)模型,融合了 (57) 模型的许多特征。该模型本质是演化的,采用迭代方法开发软件。(57) A. 瀑布B. 螺旋C.喷泉D.快速应用开发 (RAD)参考答案: (57)B 。解析:螺旋

23、模型是演化软件过程模型的一种,最早由Boehm提出,它将原型实现的迭代特征与线性顺序模型中控制的和系统化的方面结合起来,使软件增量版本的快速开发成为可能。在螺旋模型中,软件开发是一系列的增量发布。面向对象技术为软件工程的基于构件的过程模型提供了技术框架。基于构件的开发模型融合了螺旋模型的许多特征。它本质上是演化型的,要求软件创建迭代方法。基于构件的开发模型是利用预先包装好的软件构件来构造应用的。统一软件开发 (RUP)过程是在产业界提出的一系列基于构件的开发模型的代表。53. 设有定义“ inta=3 ,b,*p=&a; ”,则下列语句中使 b不为 3的语句是 (58)(58)A. b

24、=*&a;B. b=*p;C. b=a;D.b=*a;参考答案: (58)D 。解析:定义有 inta=3 , b, *p=&a; 对b赋值的表达式有 *&a、*p 、 a、*a 。引用变量。的值有两种方法,一是直接引用a,二是通过 a的指针间接引用a。对于后者,又有多种表达方法,通过指向 a的指针 p,间接引用 a的内容,如 *p 。或通过求地址运算符由变量 a得到其指针 &a,再由这指针表达式间接引用 a 的内容,如 *&a。所以表达式 *&a、*p 和 a都能引用变量 a的值,而使 b的值为 3。而表达式。 a是错误的,因为 a不是指针变量,不能对它施行取内容运算符。所以解答是 D。54. 设指针 x指向的整型变量值为万,则"printf("%d ", +*x);" 的输出是 (59)(59)A. 23B. 24C. 25D. 26参考答案: (59)D 。解析:若指针变量 x指向某个变量,例如指向变量 v,并且变量 v的值是25,则表达式 +*x

温馨提示

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

评论

0/150

提交评论