摘要:对于【软件设计师】软考考试而言,试题无疑是最重要的学习资料之一。在软考备考过程中,吃透试题、掌握试题所考知识点、熟悉试题的出题思路,对我们提升分数的效果是最明显的,通过对试题的反复练习,还可以查漏补缺。今天,给大家带来【2015年5月 软件设计师 上午题】部分试题的详解,一起来看看吧~



1、递归下降分析方法是一种(50)方法。
A、 自底向上的语法分析
B、 自上而下的语法分析
C、 自底向上的词法分析
D、 自上而下的词法分析

答案:B
答题解析:

本题考查编译原理知识点。递归下降法(RecursiveDescentMethod),是指对文法的每一非终结符号,都根据相应产生式各候选式的结构,为其编写一个子程序(或函数),用来识别该非终结符号所表示的语法范畴。递归下降法是一种语法分析方法,下降即自上而下之意。本题选择B选项。

参考答案:(50B



2、若关系R (H,L,M,P)的主键为全码(All-key),则关系R的主键应(51)。
A、 为HLMP
B、 在集合{H,L,M,P)中任选一个
C、 在集合{ HL,HM,HP,LM,LP,MP)中任选一个
D、 在集合{H LM,HLP,HMP,LMP)中任选一个作

答案:A
答题解析:

本题考查数据库知识点。全码(ALL-key)指的是关系模式的所有属性组合构成主键,故答案为A选项。

参考答案:(51A



3、给定关系模式R(A1,A2,A3,A4)上的函数依赖集F={A1A3->A2,A2->A3}。若将R分解为p ={( A1,A2),( A1,A3)},则该分解是(52)的。
A、 无损联接且不保持函数依赖
B、 无损联接且保持函数依赖
C、 有损联接且保持函数依赖
D、 有损联接且不保持函数依赖

答案:D
答题解析:

本题考查数据库知识点。设关系模式R(A1A2,…,An)R的一个分解ρ={R1,R2,,R},是否无损联接分解的判断方法如下:

第一步.构造一张kn列的表格,每列对应一个属性Aj(1jn),每行对应一个模式Ri(1ik)。如果AjRi中,那么在表格的第i行第j列处填上aj,否则填上符号bij

根据此步骤,画出本题的初始表格如下(本题中n4k2,所以表格核心部分为24列):

2015年5月 软件设计师 上午题之十七_主键

上表中,11号格子对应的列标A1在第1行的行标R1(A1,2)中,故11号格子的值为a112号格子对应的列标A2在第

1行的行标R1(A1,2)中,故12号格子的值为a213号格子对应的列标A3不在第1行的行标R1(A1,2)中,故13号格子的值为b1314号格子对应的列标A4不在第1行的行标R1(A1,2)中,故14号格子的值为b1421号格子对应的列标A1在第2行的行标R2(A1,3)中,故21号格子的值为a122号格子对应的列标A2不在第2行的行标R2(A1,3)中,故22号格子的值为b2223号格子对应的列标A3在第2行的行标R2(A1,3)中,故23号格子的值为a324号格子对应的列标A4不在第2行的行标R2(A1,3)中,故24号格子的值为b24

第二步.把表格看成模式R的一个关系,反复检查F中每个FD(函数依赖式)在表格中是否成立,若不成立,则修改表格中的元素。修改方法如下:对于F中一个FDX>Y”,如果表格中有行在X分量上相等,在Y分量上不相等,那么把对应行在Y分量上改成相等。如果Y的分量中有一个是aj,那么另一个也改成aj;如果没有aj,那么用其中的一个bij替换另一个(尽量把ij改成较小的数),一直到表格不能修改为止。

根据本题F={A1A3A2,A2A3},依赖式A1A3A2中的左部对应第1步中画出的初始表格的第1列和第3列的组合,即A1A3两列,两列对应的行值组合分别是a1b13a1a3,两行值明显不相等,则依赖式A1A3A2右边A2对应的表格列值不需要修改;再看依赖式A2A3A2列的值为a2b22,两值不相等,故A3的值也不需要进行修改。

经过本步骤的处理,表格内容依然不变。

第三步.若修改的最后一张表格中有一行全为a,即a1a2a3,……,a,那么ρ相对于F是无损连接分解,否则是有损连接分解。

本题对应的表格中,可看出没有任何一行的值全为a,故ρ相对于F是有损连接分解。

参考答案:(52D



查看完整试题>>>