[求助]求教一个编译原理的C语言程序
给定文法G(P),其产生式如下:
P->S | P;S
S->if B then S else S | if B then S | while B do S | id:=E
S->begin L end
L->L ; S | S
E->E+T | E-T | T
T->T*F | T/F | F
F-> (E) | id
id->id a |id b | …….id z | id A |id B |…..id Z |id 0|id 1|…|id 9
id->a | b | ……..| z|A|B|……..|Z (不含t)
B->B or t | t
t->t and f | f
f-> (B) | not f | E < E| E > E| E <= E| E >= E| E = E| E < > E
编写一个C语言程序,对任意输入的符号串w$,若w∈L(G),输出w的三地址代码;否则输出ERROR
----------------解决方案--------------------------------------------------------