编译原理作业

一.单选题(共12题,66.0分)

1.图中所示DFA M接受的字集为()

  • A.以0开头的二进制数组成的集合
  • B.以0结尾的二进制数组成的集合
  • C.含奇数个0的二进制数组成的集合
  • D.含偶数个0的二进制数组成的集合

2

词法分析器的输出结果是               。

  • A、单词自身值
  • B、单词在符号表中的位置
  • C、单词的种别编码
  • D单词的种别编码和自身值

3.与(a|b)*(a|b)等价的正规式是               

  • A、a*| b*
  • B、(ab)*(a|b)* 
  • C、(a|b)(a|b)*
  • D、(a|b)*

在状态转换图中,结点代表 (         ) ,用圆圈表示。

  • A、输入缓冲区
  • B、向前搜索
  • C状态
  • D、字符串

5.正规表达式(ε|a|b)2表示的集合是      

  • A、{ε,ab,ba,aa,bb}
  • B、{ab,ba,aa,bb}
  • C、{a,b,ab,aa,ba,bb}
  • D{ε,a,b,aa,bb,ab,ba}

6

用L表示字母,d表示数字,å={L,d},则定义标识符的正则表达式可以是:

  • A、 L d* 
  • B、 L L * 
  • CL (L | d)*
  • D、L L * | d*

7.关于DFA的叙述中,下面______是不正确的。

  • A、有一个有穷字母表
  • B可以有多个初始状态
  • C、可以有多个终止状态
  • D、可以有ε转换

8.有限状态自动机可用五元组(VT,Q,δ,q0,Qf)来描述,设有一有限状态自动机M的定义如下:

VT={0, 1},Q={q0, q1, q2},Qf={q2},δ的定义为:

δ(q0,0)=q1  δ(q1,0)=q2

δ(q2,1)=q2   δ(q2,0)=q2

M所对应的状态转换图为  

  • A、

  • B、

  • C、

  • D、

9.有限状态自动机可用五元组(VT,Q,δ,q0,Qf)来描述,设有一有限状态自动机M的定义如下:

VT={0, 1},Q={q0, q1, q2},Qf={q2},δ的定义为:

δ(q0,0)=q1  δ(q1,0)=q2

δ(q2,1)=q2   δ(q2,0)=q2

M所能接受的语言可以用正则表达式表示为    。

  • A、(0|1)*
  • B00(0|1)*
  • C、(0|1)*00
  • D、0(0|1)*0

10.正规表达式(ε|a|b)2表示的集合是()

  • A、{ε,ab,ba,aa,bb}
  • B、{ab,ba,aa,bb}
  • C、{a,b,ab,aa,ba,bb}
  • D、{ε,a,b,aa,bb,ab,ba}

11.正规式M1和M2等价是指()

  • A、M1和M2的状态数相等
  • B、M1和M2的有向边条数相等
  • CM1和M2所识别的语言集相等
  • D、M1和M2状态数和有向边条数相等

12. 在状态转换图的实现中,(     )一般对应一个循环语句

  • A、不含回路的分叉结点
  • B含回路的状态结点
  • C、终态结点
  • D、都不是

二.判断题(共6题,34.0分)

1一个正规式只能对应一个有限状态自动机;

我的答案:×得分: 

2.若r1和r2是Σ上的正规式,则r1|r2也是。

我的答案:

3.令Σ={a, b},则Σ上所有以b为首的字符构成的正规集的正规式为b*(a|b)*。

我的答案:×

4.NFA M的非确定性表现在它有多个终态。

我的答案:×

5.对任何一个NFA M,都存在一个DFA M',使得L(M')=L(M)。

我的答案:得分: 5.5分

6.在词法分析的状态转换图中,有些结点是带星号的,这些结点肯定是终态结点。

我的答案:

  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
MOOC是一种在线教育平台,武汉理工大学也在该平台上开设了编译原理课程。编译原理是计算机科学与技术专业的一门重要课程,主要研究计算机编程语言的设计和实现。作为这门课程的一部分,学生们需要完成编译原理作业编译原理作业是为了检验学生对于课程内容的理解和掌握程度。作业内容通常包括理论知识和实践操作两个方面。在理论知识方面,学生需要掌握编译原理的基本概念、原理和技术,了解编译器的各个模块的作用和相互之间的关系。在实践操作方面,学生需要利用所学的知识,设计并实现一个简单的编译器,完成对某种编程语言的编译工作。 完成编译原理作业对学生来说是一个较大的挑战。首先,他们需要认真学习课程内容,理解编译原理的基本原理和方法。其次,需要熟悉编程语言的语法和语义,并学会使用编程工具和技术,如Flex和Bison等。最后,还需要具备一定的分析和解决问题的能力,能够发现和解决编译过程中可能出现的错误和异常情况。 通过完成编译原理作业,学生可以更好地理解和掌握编译原理的知识和技术,提高编程能力和解决问题的能力。同时,作业也是对学生知识掌握情况的一次检验,有助于教师对学生学习情况的评估和指导。总之,编译原理作业是学生在学习该课程中的重要环节,对于学生和教学效果都具有重要意义。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值