当前位置:首页计算机类软件水平考试中级软件设计师->2013年下半年(上午)《软件设计师》真题

2013年下半年(上午)《软件设计师》真题

推荐等级:

发布时间: 2021-12-15 10:42

扫码用手机做题

试卷预览

1 单选题 1分

某单位局域网配置如下图所示,PC2发送到Internet上的报文源IP地址为(  )。

中级软件设计师,历年真题,2013年下半年(上午)《软件设计师》真题

查看答案 开始考试
正确答案:D

本题解析:

在该拓扑图中有一台代理服务器,该服务器外卡连接了因特网,内卡连接了内部网络。代理服务器除了代理内部网络的Web请求外,还可以通过NAT实现代理服务器功能访问internet,起到了隐藏内部网络细节的作用。对于因特网上的用户而言,看不到企业内网网络,唯一能看到的是代理服务器外卡接口地址。PC2发送到Internet上的报文源IP地址为会由192.168.0.2/24转变成代理服务器外卡地址202.117.112.2/30。

2 单选题 1分

在一个有向图G的拓扑序列中,顶点Vi排列在Vj之前,说明图G中(  )。

查看答案 开始考试
正确答案:C

本题解析:

拓扑序列是拓扑排序的产出物。对一个有向无环图G进行拓扑排序,是将G中所有顶点排成一个线性序列,使得图中任意一对顶点u和v,若边(u,v)∈E(G),则u在线性序列中出现在v之前。由此可见,如果Vi排列在Vj之前,说明可能存在vi到vj的路径,而不可能存在vj到vi的路径。

3 单选题 1分

设循环队列Q的定义中有front和size两个域变量,其中front表示队头元素的指针,size表示队列的长度,如下图所示(队列长度为3,队头元素为x,队尾元素为z)。设队列的存储空间容量为M,则队尾元素的指针为(  )。

中级软件设计师,历年真题,2013年下半年(上午)《软件设计师》真题

查看答案 开始考试
正确答案:B

本题解析:

本题考查循环队列队尾指针的计算方法。

从图示可以看出,要得到z的值可进行Q.front+Q.size-1操作,但在此不容忽视的一个问题是,循环队列在进行了多次入队出队操作之后,Q.front+Q.size-1有可能大于M,如Q.front指向M-1空间时,Q.front+Q.size-1=M+1,这已超出队列长度,所以需要让其与M进行求模操作,修正位置号。

4 单选题 1分

以下关于线性表存储结构的叙述,正确的是(  )。

查看答案 开始考试
正确答案:A

本题解析:

线性表采用顺序存储结构时,访问表中任意一个指定序号元素的时间复杂度为常量级,因为顺序存储结构访问元素时,能直接定位元素,这样,操作的时间复杂度为O(1)。而插入一个元素时,需要将其他的元素位置进行调整,因此任意位置插入新元素的时间复杂度为O(n)。

线性表采用链式存储结构时,访问表中的任意一个指定序号元素时,需要从起始位置,通过指针指向,直到到达指定位置,才能访问该元素,时间复杂度为O(n)。而插入一个新元素时,找到任意位置的时间复杂度为O(n),而插入可以直接通过改变指针指向进行插入,时间复杂度为O(1),因此任意位置插入新元素整个操作的时间复杂度为O(n)。

因此本题只有A选项是正确的。

5 单选题 1分

对高级语言源程序进行编译的过程中,有穷自动机(NFA或DFA)是进行(  )的适当工具。

查看答案 开始考试
正确答案:A

本题解析:

编译程序的功能是从源代码(通常为高级语言)到能直接被计算机或虚拟机执行的目标代码(汇编语言或机器语言)的翻译过程。工作过程分为6个阶段:词法分析、语法分析、语义分析、中间代码生成、代码优化、目标代码生成。

各个阶段逻辑上可以分为前端和后端。前端主要负责解析输入的源代码,由语法分析器和语意分析器协同工作。语法分析器负责把源代码中的‘单词’找出来,语意分析器把这些分散的单词按预先定义好的语法组装成有意义的表达式、语句、函数等等。前端还负责语义的检查,例如检测参与运算的变量是否是同一类型的,简单的错误处理。最终的结果常常是一个抽象的语法树,这样后端可以在此基础上进一步优化处理。

后端编译器后端主要负责分析,优化中间代码以及生成机器代码。

有限自动机是进行词法分析的工具。

6 单选题 1分

将高级语言程序翻译为机器语言程序的过程中,常引入中间代码,其好处是(  )。

查看答案 开始考试
正确答案:B

本题解析:

中间代码是源程序的一种内部表示,或称中间语言。中间代码的作用是可使编译程序的结构在逻辑上更为简单明确,特别是可使目标代码的优化比较容易实现中间代码,即为中间语言程序,中间语言的复杂性介于源程序语言和机器语言之间。中间语言有多种形式,常见的有逆波兰记号、四元式、三元式和树。

7 单选题 1分

在执行如下所示的UML活动图时,能同时运行的最大线程数为(  )。

中级软件设计师,历年真题,2013年下半年(上午)《软件设计师》真题

查看答案 开始考试
正确答案:C

本题解析:

粗实线表示并发,本题图中上面的粗实线表示并发分支,下面的粗实线表示并发汇合,图中并发分支最多有2条支线,因此,该活动图能同时运行的最大线程数为2。

8 单选题 1分

在领域类模型中不包含(  )。

查看答案 开始考试
正确答案:D

本题解析:

在领域类模型中会涉及描述类自身情况的属性与操作,还会有描述类之关系的关联,但不会有对象层次的内容。

9 单选题 1分

(  )不是单元测试主要检查的内容。

查看答案 开始考试
正确答案:C

本题解析:

单元测试测试以下内容:模块接口,局部数据结构,执行路径,错误处理和边界。

在单元测试开始时,应该对通过所有被测模块的数据流进行测试。

①输入参数是否与形式参数是否一致。

②调用模块的实参与被调用模块形参是否一致。

③全局变量在各模块中的定义和用法是否一致

④外部输入、输出等等。

10 单选题 1分

一个程序根据输入的年份和月份计算该年中该月的天数,输入参数包括年份(正整数)、月份(用1~12表示)。若用等价类划分测试方法进行测试,则(  )不是一个合适的测试用例(分号后表示测试的输出)。

查看答案 开始考试
正确答案:C

本题解析:

测试用例编写一般原则:

1、设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖的有效等价类,重复这一步,直到所有的有效等价类都被覆盖为止;

2、设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步,直到所有的无效等价类都被覆盖为止。

在本题中,C选项同时覆盖了两个无效等价类,所以不符合测试用例编写的一般原则。

其他考生还关注了更多>

相关题库更多>