已知G4=(VT{a,',',(,)},VN={S,L,L'},S,P),其中P为, S→(L)|a|ξ L→SL' L'→,SL'|ξ FOLL
已知G4=(VT{a,',',(,)},VN={S,L,L'},S,P),其中P为, S→(L)|a|ξ L→SL' L'→,SL'|ξ FOLLOW(S)是(29)。
A.{',',ξ,}}
B.{','#,}}
C.{a,','ξ,}}
D.{a,',',#}
解析:终结符A的FOLLOW集合定义如下:FOLLOW(A)={a|S…Aa…,a∈VT,A∈VN},若S…A,则规定#∈FOLLOW(A),约定#为句子结束标记。给定一个文法,求FOLLOW(A)的算法如下:①对于文法的开始符号S,置#于FOLLOW(S)中;②若A→αBβ∈P,则把FIRST(β)中的所有非∈—元素都加至FOLLOW(B)中;③若A→αB∈P,或A→αBβ∈P而βξ,则把FOLLOW(A)加至FOLLOW(B)中。重复使用上述3条规则,直到每个FOLLOW集合不再增大为止。非形式地说,一个非终结符的FOLLOW集合,就是从文法开始符号可以推导出的所有含A句型中紧跟在A之后的所有终结符号。首先,因为S是开始符号,所以,置#于FOLLOW(S)中。根据L→SL',把FIRST(L')中的所有非ξ一元素都加至FOLLOW(S)中,即把','加至FOLLOW(S)中。又根据L→SL'和L'ξ,把FOLLOW(L)加至FOLLOW(S)中,即把')'加至FOLLOW(S)中。最后,FOLLOW(S)为{#,',',)}。
● 对给定文法G=(VN,VT, P,S),VT={a,Λ,(,)},VN={S,T},S是开始符号 计算机类考试 2020-05-26 …
假设某程序语言的文法如下: S→a|b|(T) T→TdS|S 其中,VT={a,b,d,(,)); 计算机类考试 2020-05-26 …
已知文法G2=(VT={a,b},VN={S,A},S,P),其中P为, S→Sb|Ab A→aS 计算机类考试 2020-05-26 …
假设某程序语言的文法如下:S→SaT|TT→TbR|RT→PdR|P P→fSg|e 其中:VT={ 计算机类考试 2020-05-26 …
已知文法G2=(VT={a,',',(,)},VN={S,L),S,P),其中P为, S→(L)|a 计算机类考试 2020-05-26 …
假设某程序语言的文法如下: S→a|b|(T) T→TdS|S 其中:Vt=(a,b,d,(,)}, 计算机类考试 2020-05-26 …
已知G4=(VT{a,',',(,)},VN={S,L,L'},S,P),其中P为, S→(L)|a 计算机类考试 2020-05-26 …
已知文法G2=(VT={a,',',(,)},VN{S,L},S,P),其中P为, S→(L)|a 计算机类考试 2020-05-26 …
己知文法G2=(VT={a,',',(,)},VN={S,L},S,P),其中P为, S→(L)|a 计算机类考试 2020-05-26 …
假设某程序语言的文法如下:S→a|b|(T)T→TdS|S 其中:VT={a,b,d,(,)},VN 计算机类考试 2020-05-26 …