编译原理期末试题(8套含答案+大题集)

2026/4/28 22:35:39

(3) ( ) a S S →(L) S → ’ SS’→S S’→ε S’→S ’ L L→’ L→’ L’→ε L’

11.(1) (j>, X, 0, (5))

(2) (j, _, _, (3)) (3) (j<, Y, 0, (5)) (4) (j, _, _, (11)) (5) (j>0, X, 0, (7)) (6) (j, _, _, (7)) (7) (*, A, 3, T1) (8) (, T1, _, N) (9) (j, _, _, (5)) (10) (j, _, _, (13)) (11) (+, B, 3, T2) (12) (, T2, _, Y)

12.(1) >>>T*>F*>(E)*>()*>()* =>()*>()*>()*>()*>()* =>()*>()*

(2) 短语 i, F, , (), ()*i, ()* 素短语 i,

最左素短语

13.(1) (S)={∨, ∧, i, - } (T)={∧, i, -} (U)={i, -}

(S)={∨, ∧, i, - }

(T)={∧, i, -}

(U)={i, -} (2) i ∨ ∧ S .> .> ∨ <. .> <. ∧ <. .> .> - <. .> .>

, # S’→ε S’→ε L’→’ - <. <. <. 21 / 81

《编译原理》期末试题(二)

1、描述由正规式b*(*)*( 的最简。

2、证明文法E E + | 是(1)文法。

3、下面是表达式和赋值语句的文法,其中的类型是 的类型是 ,=的类型是

,+

)定义的语言,并画出接受该语言

, 要求 和E的类型都

是或者都是。为该文法写一个语法制导定义或翻译方案,它完成类型检查。

S E

E

E E | E + E | E = E

4、对于下面C语言文件 f1( x) { x; x = 1; }

22 / 81

f2( x) { { x; x = 1; } }

某编译器编译时报错如下: : ‘f1’: :3: : ‘x’ a

请回答,对函数f2为什么没有类似的警告错误。

5、下面C语言程序经非优化编译后,若运行时输入2,则结果是

12.566360, 1073743076

经优化编译后,若运行时输入2,则结果是 12.566360, 1073743068 请解释为什么输出结果有区别。

() {

s, , r;

23 / 81

3.14159; (\

(\

}

6、描述由正规式ba(a)b定义的语言,并画出接受该语言的最简。

7、下面的文法产生代表正二进制数的0和1的串集: B B 0 | B 1 | 1

下面的翻译方案计算这种正二进制数的十进制值: B B1 0 { B1 2 } | B1 1 { B1 2 +1} | 1 { 1 }

请消除该基础文法的左递归,再重写一个翻译方案,它仍然计算这种正二进制数的十进制值。

8、 在C语言中,如果变量i和j都是类型,请写出表达式和表达式的类型表达式。为帮助你回答问题,下面给出一个程序作为提示,它运行时输出1。 () { i, j; (“\\n”, ); }

9、一个C语言的函数如下:

24 / 81


编译原理期末试题(8套含答案+大题集).doc 将本文的Word文档下载到电脑
搜索更多关于: 编译原理期末试题(8套含答案+大题集) 的文档
相关推荐
相关阅读
× 游客快捷下载通道(下载后可以自由复制和排版)

下载本文档需要支付 10

支付方式:

开通VIP包月会员 特价:29元/月

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:xuecool-com QQ:370150219