第一章 单元测试

1、单选题:
以下哪项不属于编译器的主要组成部分?( )
选项:
A:词法分析器
B:操作系统接口
C:代码生成器
D:语法分析器
答案: 【操作系统接口

2、单选题:
编译器的主要功能是将高级语言程序转换为( )。
选项:
A:目标代码
B:机器语言程序(直接可执行)
C:汇编语言程序
D:中间代码
答案: 【目标代码

3、多选题:
以下属于编译器结构中的前端部分的有( )。
选项:
A:语法分析
B:词法分析
C:语义分析
D:代码优化
答案: 【语法分析;
词法分析;
语义分析

4、判断题:
编译器和解释器的主要区别在于是否生成目标代码。( )
选项:
A:对
B:错
答案: 【

5、判断题:
编译器的各个阶段必须严格按顺序执行,不能有重叠。( )
选项:
A:对
B:错
答案: 【

第二章 单元测试

1、单选题:
词法分析器的输出是( )。
选项:
A:词法单元(Token)
B:语法树
C:源程序
D:中间代码
答案: 【词法单元(Token)

2、单选题:
正则表达式a(b|c)*d表示的语言是( )。
选项:
A:以a开头,d结尾的任意长度字符串
B:以a开头,d结尾,中间由b或c任意次组成的字符串
C:包含a、b、c、d的任意字符串
D:以a开头,d结尾,中间至少有一个b或c的字符串
答案: 【以a开头,d结尾,中间由b或c任意次组成的字符串

3、多选题:
以下哪些语言的结构可以使用正则表达式描述?( )
选项:
A:整数(由若干数字组成)
B:匹配括号成对嵌套的表达式
C:十六进制常量(形如 0x1F)
D:浮点数(形如 123.45)
答案: 【整数(由若干数字组成);
十六进制常量(形如 0x1F);
浮点数(形如 123.45)

4、判断题:
词法分析器的任务是识别源程序中的单词,并将其转换为相应的词法单元。( )
选项:
A:对
B:错
答案: 【

5、判断题:
确定的有穷自动机(DFA)和不确定的有穷自动机(NFA)的识别能力是等价的。( )
选项:
A:对
B:错
答案: 【