第一章 绪论

编译器概述

1、单选题:
‎编译程序绝大多数时间花在(  )上。‌
选项:
A:  出错处理 
B: 词法分析
C: 目标代码生成 
D: 符号表管理
答案: 【 符号表管理

2、单选题:
‏(    ) 和代码优化部分不是每个编译程序都必需的。‌
选项:
A: 语法分析
B: 中间代码生成
C: 词法分析
D: 代码生成
答案: 【 中间代码生成

3、单选题:
​编译程序前三个阶段完成的工作是(    )。‏
选项:
A: 词法分析、语法分析和代码优化
B: 代码生成、代码优化和词法分析
C: 词法分析、语法分析和语义分析
D: 词法分析、语法分析和代码生成
答案: 【 词法分析、语法分析和语义分析

第二章 词法分析

NFA与DFA的概念

1、单选题:

‏有如图所示的有穷自动机,与之等价的正规式为(   )。

‌选项:
A: (0|1)*(000|111)(0|1)
B: (0|1) (000|111)(0|1)
C: (0|1)*(000|111)(0|1) *
D: A,B ,C选项都不正确
答案: 【 (0|1)*(000|111)(0|1) *

2、单选题:
​对于NFA和DFA模型说法错误的是(  )。‍
选项:
A: DFA是NFA的特殊形式
B: DFA与NFA的状态转换完全相同
C: 都有唯一的开始状态
D: 都可以有多个接受状态
答案: 【 DFA与NFA的状态转换完全相同

3、单选题:
‏对于DFA模型,说法错误的是(  )。‎
选项:
A: DFA从任何状态出发,对于任何输入符号,可有多个转换
B: 任何状态都没有ε转换
C: DFA有唯一的开始状态
D: DFA可以有多个接受状态
答案: 【 DFA从任何状态出发,对于任何输入符号,可有多个转换

正规式与语言的对应关系

1、单选题:
‏下面文法(   )和正规表达式a*b描述的语言相同。​
选项:
A: S→ab | aSb
B: S→b | aS
C: S→a | aSb
D: S→a | Sb
答案: 【 S→b | aS

2、单选题:
‏最多包含两个a的{a,b}上的语言(  )。‎
选项:
A: (a|ε)b*(a|ε)
B: b*ab*ab*|b*ab*
C: b*(a|b*)(a|b*)b*
D: b*(a|ε)b*(a|b*)b*
答案: 【 b*(a|ε)b*(a|b*)b*

3、单选题:
‌与(a|b)*等价的正规式是(  )。‎
选项:
A: (a*|b*)*
B: (a|b)+
C: (ab)*
D: a*|b*
答案: 【 (a*|b*)*

词法分析器的功能

1、单选题:
​词法分析程序的输出结果是(  )‍
选项:
A: 单词的种别编码
B: 单词在符号表中的位置
C: 单词的种别编码和单词属性值
D: 单词的单词属性值
答案: 【 单词的种别编码和单词属性值

2、单选题:
‏词法分析器用于识别_____‏
选项:
A: 字符串
B: 语句
C: 单词
D: 标识符
答案: 【 单词

3、单选题:
​扫描器所完成的任务是从字符串形式的源程序中识别出一个个具有独立含义的最小语法单位即‏
选项:
A: 字符
B: 单词
C: 句子
D: 句型
答案: 【 单词

第三章 语法分析

Yacc的相关概念

1、单选题:
‎Yacc程序不包含下面的哪一部分()​
选项:
A: 声明
B: 翻译规则
C: 支持例程
D: 定义
答案: 【 定义

2、单选题:
‌下列说法正确的是(   )‏
选项:
A: lex是一个词法分析器
B: Yacc是一个语法分析器的生成器
C: lex是一个语法分析器的生成器
D: Yacc是一个语法生成器
答案: 【 Yacc是一个语法分析器的生成器

3、单选题:
‏用Yacc处理二义文法的两大默认规则为()‍‏①对于归约-归约冲突,选择在Yacc程序中最

剩余75%内容付费后可查看

发表评论

电子邮件地址不会被公开。 必填项已用*标注