国开搜题
想要快速找到正确答案?
立即关注 国开搜题微信公众号,轻松解决学习难题!
作业辅导
扫码关注
论文指导
轻松解决学习难题!
编译原理 - 第2次作业:词法分析综合设计(占形考成绩25%,对应总成绩12.5%)
课程名称:编译原理 发布教师:张涛 作业来源:第3学习单元 词法分析 作业满分:100.0分 发布时间:2025-07-20 作业要求:本作业基于第三章词法分析理论,要求学生综合运用正规文法、状态转换图、词法分析程序设计等核心知识点。通过设计一个简化编程语言的词法分析器,深入理解词法分析的工作原理和实现方法。作业涵盖理论概念、图形设计和程序实现三个层面,要求学生不仅掌握基本概念,还能将理论知识转化为实际的分析工具。给定语言L包含关键字(if, then, else, while, do)、运算符(+, -, *, /, =, ==, <, >)、界限符((, ), {, }, ;)、标识符(字母开头的字母数字串)、整数(非零开头或单独0)和注释(//开头到行尾),回答下面的问题。要求学生需要独立完成,答题规范,特别注意状态转换图的绘制和词法分析过程的详细描述。
单选题
1. 对于标识符的正规表达式,下列哪个是正确的? (分值:6.0分)
A. [a-zA-Z][a-zA-Z0-9]*
B. [a-zA-Z0-9]+
C. [a-zA-Z]+[0-9]*
D. [0-9a-zA-Z]*
2. 在状态转换图中,终态用什么符号表示? (分值:6.0分)
A. 单圆圈 渝粤教育 p>
B. 双圆圈
C. 方框
D. 三角形
3. 词法分析器处理字符串"if123"时,应该识别为: (分值:6.0分)
A. 一个关键字"if"和一个整数"123"
B. 一个标识符"if123"
C. 语法错误
D. 一个关键字"if"和一个标识符"123"
4. 左线性文法A→Ba|a对应的状态转换图有几个状态? (分值:6.0分)
A. 2个
B. 3个
C. 4个
D. 1个< 渝粤文库 /p>
5. 正规表达式(a|b) abb表示的语言是: (分值:6.0分)
A. 以abb结尾的所有字符串
B. 在字母表{a,b}上以abb结尾的所有字符串
C. 只包含abb的字符串
D. 包含abb子串的所有字符串
填空题
1. 词法分析器的主要任务包括:无用字符、单词、对单词进行、建立各种 _____ 。 (分值:4.0分)
2. 正规文法分为 _____ 线性文法和 _____ 线性文法两种类型。 (分值:8.0分)
3. 在状态转换图中,如果终态右上角有星号(*),表示需要将多读的字符退还给 _____ 。 (分值:4.0分)
4. 单词的内部编码通常表示为二元组形式: _____ (分值:4.0分)
< 广东开放大学 /p>
5. 字符串"abc123"的长度|abc123| = _____ 。 (分值:4.0分)
判断题
1. 所有程序设计语言的关键字都是保留字。 (分值:4.0分)
2. 正规表达式a*表示空串或任意个a组成的串。 (分值:4.0分)
3. 左线性文法构造的状态转换图采用自顶向下的识别方法。 (分值:4.0分)
4. 词法分析可以检测出所有的语法错误。 (分值:4.0分)
5. 一个DFA可以转换为等价的正规表达式。 (分 成人学历 值:4.0分)
简答题/计算题
1. 什么是词法分析?词法分析的主要任务有哪些? (分值:10.0分)
2. 已知文法G[S]: S::=S+T | T T::=T*F | F|b F::= (S) | a|a+,对 渝粤题库 于句型T*a+a画出其语法树,并找出其句柄。 (分值:16.0分)
