5.1 递归子程序法属于(A)语法分析方法
A 自顶向下 B 自底向上 C 自左向右 D 自右向左
5.2 采用确定的自顶向下分析时,必须(A)
A 消除左递归 B 消除右递归 C 避免回溯 D 提取左公因子
5.3 自上而下语法分析的主要分析动作是A
A 推导 B 移进 C 归约 D 匹配
5.4 一个字符属于FOLLOW(S),这个字符的含义是(A)
A 一定会有一个句型中后随S的终结符
B S可能推导出第一个字符
C S可能推导出最后一个字符
D 在某句型中直接跟在S后的字符
5.5 在递归子程序方法中,若文法存在左递归,则会使分析过程产生(D)
A 回溯 B 非法调用 C 有限次调用 D 无限循环
5.6 编译程序中的语法分析器接受以(C)为单位的输入,并产生有关信息供以后各阶段使用
A 表达式 B 产生式 C 单词 D 语句
5.7 构造一个不带回溯的自顶向下语法分析器,要求文法满足E
A.对每个形如A→x1|x2|…|xn的产生式,要求FIRST(xi)与FIRST(xj)的交集为空集(i≠j)
B.对每个形如A→x1|x2|…|xn的产生式,若xi能推出ε,则要求FIRST(xj)与FOLLOW(A)的交集为空集(i≠j)
C. 不含左递归
D. A和B同时满足
E. A、B和C同时满足
5.8 LL(1)文法(B)二义性的
A 都是有 B 都没有 C 不一定有 D 极少具有
5.9 语法分析器的常用方法是AB
A 自顶向下 B 自底向上 C 自左向右 D 自右向左
5.10 LL(1)分析法又称为预测分析方法
正确
5.11 左递归会造成自顶向下分析过程出现无穷的重复
正确
5.12 LL(1)文法不一定都是二义性的
错误
5.13 考虑文法G[A]:A→A∨B|B B→B∧C|C C→┓C|D D→(A)|i 该文法是LL(1)文法
错误
5.14 一个算符优先文法可能不存在算符优先函数与之对应
正确
5.15 LR分析法在自左至右扫描输入串时就能发现错误,并且能准确地指出出错地点。
正确
5.16 最左简单子树的末端结点构成的符号串称为(B )
A 简单短语 B 句柄 C 最左素短语 D 素短语
5.17若a为终结符,则A→α·aβ为(C )项目
A 待约 B 接受 C 移进 D 归约
5.18下面哪种不是自底向上的语法分析文法(C )。
A LR(1) B SLR(1) C LL(K) D 算符优先法
5.19 LR(k)方法是(B )。
A 从左到右分析,每次向前预测k步的一种编译方法
B 从左到右分析,是否归约句柄要向后看k个输入符号的一种编译方法
C 从左到右分析,共经过k步的一种编译方法
D 从左到右分析,每次走k步的一种编译方法
5.20 算符优先分析是一种自底向上的分析方法,它是以(C )作为每一步归约的对象。
A 句柄 B 最右直接短语 C 最左素短语 D 最右素短语
5.21 在通常的语法分析方法中,(C )特别适用于表达式的分析。
A 简单优先法 B LR分析法 C 算符优先法 D LL(1)分析法
5.22 若项目集Ik含有A->α·,则在状态k时,仅当面临的输入符号a∈FOLLOW(A)时,才采取“A->α·”动作的一定是(D )
A LALR文法 B LR(0)文法 C LR(1)文法 D SLR(1)文法
5.23 在规范归约中,任何可归约串的出现都在(C )
A 栈的内部 B 剩余的输入串中 C 栈顶 D 在栈顶和输入串中
5.24 一个LR分析器实质上是一个带有先进后出存储栈的(A )
A DFA B NFA C ACTION表 D LR分析表
5.25 LR分析法属于( D)
A 自顶向下分析法 B LALR分析法 C SLR分析法 D 自底向上分析法
5.26 自下而上语法分析的主要分析动作是(C )
A 移进 B 推导 C 归约 D 匹配