编译原理里知道文法表达式怎么判断一个式子是符合这个表达式? 5C

譬如
简单算术表达式的结构可以用下面的上下文无关文法进行描述(E为开始符号),(50)是符合该文法的句子。
E→T|E+T
T→F|T*F
F→-F|N
N→0|1|2|3l4|5|6|7|8|9

A. 2--3*4

B. 2+-3*4

C. (2+3)*4

D. 2*4-3

我觉得只有c不是,其他都很像,求详解啊,最近准备软考被文法,自动机搞疯了都,别人说画语法树,可是我画了也做不出来,求详细解答啊,谢谢各位了。

1个回答

B可以用以下步骤得出来
E→E+T→F+T→N+T→2+T→2+T*F→2+F*F→2+-F*F→2+-N*N→2+-3*4

A和D推导不出来

死套的,没有找到解题技巧。

liuade
艾德 又想了一下,我之前说的不对,拿着答案去套,确实只有B能套出来
一年多之前 回复
liuade
艾德 回复: 我编辑一下之前的回复哈,省得别人看到错误答案
一年多之前 回复
liuade
艾德 回复: 哦,不好意思,F→-F|N里-号在F左边,顺序应该是+-*。
一年多之前 回复
zuoside__lord
咱可是贤狼赫萝 不对喔,我选择的也是d,软考给出的答案是b,不过还是谢谢你
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问