本文主要是介绍C 是编译类高级程序语言 对 错,编译原理复习题(2),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
1.乔姆斯基(Chomsky)把文法分为四种类型,即0型、1型、2型、3型。其中3型文法是( )
A.正则文法
B.上下文无关文法
C.上下文有关文法
D.短语文法
答案:A
2.( )文法不是LL(1)的。
A.递归
B.右递归
C.2型
D.含有公共左因子
答案:D
4.LR(K)方法是( )。
A.从左到右分析,每次走K步的一种编译方法
B.从左到右分析,共经过K步的一种编译方法
C.从左到右分析,每次向前预测K步的一种编译方法
D.从左到右分析,是否归约句柄要向后看K个输入符号的一种编译方法
答案:C
5.SLR(1)分析法的名字中,“L”的含义是( )。
A.自左向右进行分析
B.自右向左进行分析
C.采用最右推导的逆过程
D.采用最左推导的逆过程
答案:A
7.在使用高级语言编程时,首先可通过编译程序发现源程序的什么错误?( )
A.语法
B.语义
C.语用
D.运行
答案:A
9.编译程序是将( )翻译成( ) 。
A.汇编语言程序 机器语言程序
B.高级语言程序 汇编语言程序或机器语言程序
C.汇编语言程序或高级语言程序 机器语言程序或高级语言程序
D.高级语言程序 机器语言程序或高级语言程序
答案:B
11.编译器与要编译的源程序的接口阶段是( )。
A.扫描程序
B.语法分析程序
C.语义分析程序
D.代码生成器
答案:A
12.由于受到具体机器主存容量的限制,编译程序几个不同阶段的工作往往被组合成()。
A.过程
B.程序
C.批量
D.遍
答案:D
14.( )不是NFA的成分。
A.有穷字母表
B.初始状态集合
C.终结状态集合
D.有限状态集合
答案:B
·因为只有唯一的初始状态
15.编译过程中,语法分析器的任务是( )。
A.分析单词是怎样构成的
B.分析单词串是如何构成语句和说明的
C.分析语句和说明是如何构成程序的
D.分析程序的结构
答案:Bcd
16.词法分析器的输入是( )。
A.单词符号串
B.源程序
C.语法单位
D.目标程序
答案:B
17.词法分析器用于识别( )。
A.字符串
B.语句
C.单词
D.标识符
答案:C
18.代码生成阶段的主要任务是( )。
A.把高级语言翻译成汇编语言
B.把高级语言翻译成机器语言
C.把中间代码变换成依赖具体机器的目标代码
D.把汇编语言翻译成机器语言
答案:C
19.代码优化时所依据的是( )。
A.语法规则
B.词法规则
C.等价变换规则
D.语义规则
答案:C
20.优化可生成( )的目标代码。
A.运行时间较短
B.占用存储空间较小
C.运行时间短但占用内存空间大
D.运行时间短且占用内存空间小
答案:D
21.下面哪个不是单词的描述工具?( )
A.正规式
B.有穷自动机
C.下推自动机
D.正规文法
答案:C
22.高级语言编译程序常用的语法分析方法中,递归分析法属于( )分析方法。
A.自右至左
B.自左至右
C.自底向上
D.自顶向下
答案:D
23.设有文法G[S]: S→ S*S | S+S | (S) | a,该文法( )二义性文法。
A.是
B.不是
C.不一定
答案:A
25.用高级语言编写的程序经过编译后产生的程序叫( )。
A.源程序
B.目标程序
C.函数
D.过程
答案:B
26.程序语言一般分为( )和( )两大类。
A.高级语言 低级语言
B.低级语言 通用程序语言
C.高级语言 专用程序语言
D.低级语言 专用程序语言
答案:a
29.xabcde-*f/+:=是赋值语句( )相应的后缀式 。
A.x:=a+b+c*d-e/f
B.x:=a+(b+c)*d-e/f
C.x:=a+b+c*(d-e)/f
D.x:=a+b+c+(c*d)-e/f
答案:C
30.表达式(A∨B)∧(C∨¬D∧E)的逆波兰表示为( )。
A.AB∨CD¬∨E∧∧
B.AB∨CDE∧¬∨∧
C.AB∨CD¬E∧∨∧
D.AB∨CD∨¬E∧∧
答案:A
31.以下中间代码的表示形式中,( )更便于优化。
A.三元式
B.四元式
C.树
D.后缀式
答案:B
32.程序基本块是指( )。
A.一个子程序
B.一个仅有一个入口和一个出口的语句
C.一个没有嵌套的程序段
D.一组顺序执行的程序段,仅有一个入口和一个出口
答案:D
33.间接三元式表示法的优点是( )。
A.采用间接码表,便于优化处理
B.节省存储空间,不便于表的管理
C.便于优化处理,节省存储空间
D.节省存储空间,不便于优化管理
答案:A
34.解释程序处理语言时,大多数采用的是( )。
A.源程序命令被逐个直接解释执行
B.先将源程序转化为中间代码,再解释执行
C.先将源程序解释转化为目标程序,再执行
D.以上方法都可以
答案:B
38.经过编译所得到的目标程序是( )。
A.四元式序列
B.间接三元式序列
C.二元式序列
D.机器语言程序或汇编语言程序
答案:D
39.(
)这样一些语言,它们能被确定的有穷自动机识别,但不能用正规表达式表示。
A.存在
B.不存在
C.无法判定是否存在
答案:B
40.在通常的语法分析方法中,( )特别适用于表达式的分析。
A.算符优先分析法
B.LR分析法
C.递归下降分析法
D.LL(1)分析法
答案:A
42.如果文法G是无二义的,则它的任何句子α( )。
A.最左推导和最右推导对应的语法树必定相同
B.最左推导和最右推导对应的语法树可能不同
C.最左推导和最右推导必定相同
D.可能存在两个不同的最左推导,但它们对应的语法树相同
答案:A
43.BNF是一种广泛采用的( )的工具。
A.描述规则
B.描述语言
C.描述文法
D.描述句子
答案:C
44.文法S→abC,bC→ad是几型文法?( )
A.0型文法
B.1型文法
C.2型文法
D.3型文法
答案:B(上下文有关文法)
45.文法G所描述的语言是( )的集合。
A.文法G的字汇表V中所有符号组成的符号串
B.文法G的字汇表V的闭包V*中的所有符号串
C.由文法的识别符号推出的所有符号串
D.由文法的识别符号推出的所有终结符号串
答案:B
46.若一个文法是递归的,则它所产生语言的句子个数( )。
A.必定是无穷的
B.是有限个的
C.根据具体情况而定
答案:A
47.下面的优化项目中,不属于循环优化的是( )。
A.不变运算外提
B.削弱运算强度
C.消除归纳变量?
D.合并已知运算
答案:D
48.有限自动机有( )接受状态。
A.只能一个
B.只能两个
C.只能三个
D.0个、一个或多个
答案:D
50.在语法分析处理中,FIRST集合、FOLLOW集合、SELECT集合均是( )。
A.非终极符集
B.终极符集
C.字母表
D.状态集
答案:B
51.编译程序中语法分析器接收以( )为单位的输入。
A.单词
B.表达式
C.产生式
D.句子
答案:A
52.文法E—>E+E|E*E|i的句子i*i+i*i有(
)棵不同的语法树。
A.1
B.3
C.5
D.7
答案:C
54.若文法G定义的语言是无限集,则文法必然是( )。
A.递归的
B.前后文无关的
C.二义性的
D.无二义性的
答案:A
55.某个语言,它能用正规表达式表示,但是它不能使用任何正规文法表示,这个语言必然是(
)
A.1型文法所对应的语言
B.含有二义的语言
C.既含有左递归又含有右递归
D.不存在的语言
答案:D正则表达式与正规文法是等价的
56.给定文法,A::=bA|cc,下面哪些符号串可由其推导出?(
)①cc②b*cc③b*cbcc④bccbcc⑤bbbbcc
A.①
B.①③④⑤
C.①⑤
D.①②⑤
答案:D
57.与正规式r=(a|b)*等价的是( )。
A.a*b*
B.(ab)*
C.(a|b)(a|b)+
D.((a|b)*)*
答案:D
58.中间代码生成时所依据的是( )。
A.语法规则
B.词法规则
C.语义规则
D.等价变换规则
答案:C
59.下面( )不是自底向上的语法分析方法。
A.SLR(1)
B.LR(1)
C.LL(k)
D.算符优先符
答案:C
60.采用自上而下分析,必须( )。
A.消除左递归
B.消除右递归
C.消除回溯
D.提取公共因子
答案:C
61.编写一个计算机高级语言的源程序后,到正式上机运行之前,一般要经过( )。
A.编辑
B.编译
C.连接
D.运行
E.调试
答案:A|B|C
62.编译程序工作时,通常包括( )阶段。
A.词法分析
B.语法分析
C.中间代码生成
D.语义检查
E.目标代码生成
答案:A|B|C|E
63.常用的参数传递方式有( )。
A.传地址
B.传值
C.传声明
D.传变量
E.传名
答案:A|B|E
65.编译程序的输出结果可以是();A.目标代码;B.汇编语言代码;C.中间代码;D.优化后的中间代码;E.可重定位代码;
答案:A|B|C|D|E;
67.计算机执行用高级语言编写的程序有哪些途径?( )
A.链接
B.汇编
C.解释
D.编译
答案:C|D
68.编译过程中扫描器的任务包括( )。
A.组织原程序的输入
B.识别单词属性,并输出
C.删除注解
D.行计数、列计数
E.建立符号表
答案:A|B|C|D|E
71.编译方法中自顶向下的语法分析算法有( )。
A.递归下降法
B.SLR方法
C.LL(K)分析方法
D.LR(K)方法
答案:A|C
72.语法分析的常用方法是( )。
A.自顶向下
B.自底向上
C.自左向右
D.自右向左
答案:A|B
73.常用的两种动态存贮分配办法是( )。
A.栈式动态分配
B.顺序动态分配
C.随机动态分配
D.堆式动态分配
答案:A|D
75.如果文法G存在一个句子,满足下列条件( )之一时,则称该文法是二义文法。
A.该句子的最左推导与最右推导相同
B.该句子有两个不同的最左推导
C.该句子有两棵不同的最右推导
D.该句子有两棵不同的语法树
E.该句子的语法树只有一个
答案:B|C|D
76.(a|b)a+(ba)*与下面的哪些串匹配?( )
A.ba
B.bba
C.ababa
D.aa
E.baa
答案:A|D|E
77.ab*c*(a|b)c与下面的那些串匹配?( )
A.acbbc
B.abbcac
C.abc
D.acc
答案:B|C
78.编译过程中,比较常见的中间语言有( )。
A.波兰表示根据优化所涉及的范围,可将优化分为(
)。
B.逆波兰表示
C.三元式
D.四元式
答案:B|C|D
82.根据优化所涉及的范围,可将优化分为
A.局部优化
B.过程优化
C.全局优化
D.循环优化
E.四元式优化
答案:A|C|D
83.语法分析的方法大致可分为哪两类?( )
A.算符优先分析法
B.自上而下分析法
C.自下而上分析法
D.LL(1)分析法
答案:B|C
86.令∑={a,b},则∑上所有以b开头,后跟若干个ab的字的全体对应的正规式为( )。
A.b(ab)*
B.b(ab)+
C.(ba)*b
D.(ba)+b
E.b(a|b)
答案:A|B|D
87.对正规文法描述的语言,以下( )有能力描述它。
A.0型文法
B.1型文法
C.上下文无关文法
D.右线性文法
E.左线性文法
答案:A|B|C|D|E能够表达任何正则表达示能够表达的内容。
88.下面( )说法是错误的。
A.有向图是一个状态转换图
B.状态转换图是一个有向图
C.有向图是一个DFA
D.DFA可以用状态转换图表示
E.文法中终结符和非终结符的交集是空集
答案:A|C
89.下列不属于banana的子串的是( )。
A.b
B.baa
C.babn
D.baan
E.nan
答案:B|C|D
90.程序语言的单词符号一般可以分为( )。
A.基本字
B.标识符
C.常量
D.算符
E.界符
答案:A|B|C|D|E
91.最小化的DFA,它的状态数最小。
答案:对
92.最小化的DFA所识别接受的正规集最小。
答案:错
94.LL(1)分析法中,“1”的含义是向输入串中查看一个输入符号。 答案:对
95.LL(1)文法又称为预测分析方法。
答案:对
96.一个LL(1)文法一定是无二义和无回溯方法。
答案:对
107.对于字母表Σ上的任一NFA M',必存在Σ上与NFA M'等价的DFA M。
答案:对
108.在SLR(1)分析法的名称中,S的含义是简单的。
答案:对
109.编译程序是对高级程序的翻译。
答案:对
117.词法分析是编译的第一阶段。
答案:对
118.词法分析作为单独的一遍来处理较好。
答案:错
119.单词的种别提供给语法分析程序使用。
答案:对
120.执行词法分析的程序叫做扫描程序。
答案:对
121.设计词法分析程序可以借助于状态转换图。
答案:对
122.编译程序中错误处理的任务是对检查出的错误进行修改。
答案:错
123.进行代码优化时应着重考虑循环的代码优化,因为这将大大的提高目标代码的效率。 答案:对
124.源程序到目标程序的变换是等价变换,即两者结构不同,但语义是一致的。
答案:对
125.若文法G定义的语言是无限集,则文法必然是递归的。
答案:对
126.递归下降法不允许任一非终极符是直接左递归的。
答案:对
127.由于递归下降子程序方法较LL(1)方法简单,因此它要求文法不必是LL(1)文法。
答案:错
128.LL(1)文法可以有公共左因子。
答案:错
137.静态数组的存储空间可以在编译时确定。
答案:错
146.在任何文法的产生式中,终结符都不能出现在产生式左部。
答案:错
149.使用有限自动机可以实现单词的识别。
答案:对
152.编译过程中,语法分析器的任务是分析单词是怎样构成的。
答案:错
153.语法分析器的输入是单词符号。
答案:对
154.语法分析时必须先消除文法中的左递归。
答案:错(自顶向下的常用两种需要消除左递归)
155.语法分析之所以采用上下文无关文法是因为它的描述能力最强。
答案:错
156.在编译中进行语法检查的目的是为了发现程序中所有错误。
答案:错
157.语法树和推导树不一样。
答案:错
158.语法制导翻译只适用于自下而上的语法分析方法。
答案:错(语法制导翻译分为自下而上语法制导翻译和自上而下语法制导翻译)
165.语义规则中的属性有两种:综合属性与继承属性。
答案:对
166.两个正规集相等的必要条件是他们对应的正规式等价。
答案:错
167.设r和s分别是正规式,则有L(r|s)=L(r)|L(s)。
答案:错(则有L(r|s)=L(r)UL(s)。)
168.词法分析中单词符号是用上下文无关文法描述的,语法分析中语法类是用正规文法描述的。
答案:错(语法分析是用上下文无关文法;词法分析是用上下文无关文法;)
169.等价文法是指两个文法完全相同。
答案:错
170.一个正规式可能对应多个正规文法。
答案:对
173.正规文法、正规表达式、有限自动机这三者之间在某种意义下是互相等价的。
答案:对
174.目标代码生成时,不应考虑如何充分利用计算机的寄存器的问题。 答案:错
175.三地址语句类似于汇编语言代码,可以堪称中间代码的一种抽象形式。 答案:对
176.采用三元式实现三地址代码时,不利于对中间代码进行优化。
答案:对
177.确定的自动机以及不确定的自动机都能正确地识别正规集。
答案:对
178.自动机M和M′的状态数不同,则二者必不等价。
答案:错
179.采用自上而下分析,必须消除左递归。
答案:对
180.综合属性是用于“自上而下”传递信息。
答案:错
这篇关于C 是编译类高级程序语言 对 错,编译原理复习题(2)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!