问题 单项选择题

对于下面的文法G[S],()是其句子(从S出发开始推导)。

G[S]S→MKS,M)

M→P|MP

P→a|b|c|...|x|x|z

A. ((a,f)

B. ((fac,bb),g)

C. (abc)

D. (c,(da))

答案

参考答案:B

解析:

本题考查语言结构的文法表示。

推导就是用产生式的右部替换产生式左部符号。从文法的开始符号出发,不能推导出“((a,f)”、“(abc)”、“(c,(da))”,产生符号串“((fac,bb),g)”的最左推导过程如下:

S => (S,M) => ((S, M), M) => ((M, M), M) => ((MP, M), M)

=> ((MPP, M), M) => ((PPP, M), M) => ((fPP, M), M) => ((faP, M), M) => ((fac, M), M)

=> ((fac, MP),M) => ((fac, PP), M) => ((fac, bP), M) => ((fac, bb), M) => ((fac, bb), g)

问答题
单项选择题