哈工大编译原理习题及答案

发布时间 : 星期二 文章哈工大编译原理习题及答案更新完毕开始阅读

If next_token=’d’ then If next_token=’;’ then If X then

If next_token=”end” then return; Restore; P:=false; End;

Function X:boolean; Begin Save; X:=true;

If next_token=’d’ then If next_token=’;’ then If X then return; Restore;

If next_token=’s’ then If Y then return; Restore; X:=false; End;

Function Y:boolean; Begin Save;

Y=true;

If next_token=’;’ then If next_token=’s’ then If Y then return; Restore; End;

(2)消去文法左递归,并记为:

P→begin S endS→A|CA→V:=EC→ if E then S E→VE’E’ →+VE’|εV→I Function P:boolean; Begin Save; P:=true;

If next_token=”begin” then If S then

If next_token=”end” then return;; Restore; P:=false; End;

Function A:boolean; Beign Save; A:=true;

If V then

If next_token=”:=” then If E then return; Restore; A:=flase; End;

Function S:boolean; Beign Save; S:=true;

If A then return; Restore;

If C then return; Restore; S:=false; End;

Function C:boolean; Begin Save; C:=true;

If next_token=”if” then If E then

If next_token=”then” then

If S then return; Restore; C:=false; End;

Function E:boolean; Begin Save; E:=true; If V then

If Ep then return; Restore; E:=false; End;

Function Ep:boolean; Being Save; Ep:=true;

If next_token=’+’ then If V then

If E’ then return; Return; End;

?

4.解:

联系合同范文客服:xxxxx#qq.com(#替换为@)