为什么在自上而下的语法分析中,文法不能含有左递归和公共左因子
因为需要某个扩展时,需要根据读的到第一个字符来判断执行哪个扩展.如果有左递归的话,将会陷入不停扩展的死循环.如果有公共左因子的话,也无法判断该选择哪个扩展.比如E->EF,语法分析程序应该是E(){E();F();}这样,明显...
举一反三
内容
- 0
采用自上而下分析,不必( )。? 消除回溯|提取公共左因子|消除左递归|消除右递归; ;;
- 1
哪种文法一定不是LL(1)文法。() A: 递归 B: 右递归 C: 2型文法 D: 含有公共左因子
- 2
即使是含有左递归的文法,也是可以用于自上而下的分析的。
- 3
使用自上而下的方法时的前提是_______和________。 A: 消除左递归 提取公共右因子 B: 消除右递归 提取公共左因子 C: 消除左递归 提取公共左因子 D: 消除右递归 提取公共右因子
- 4
()文法不是LL(1)的。 A: 递归 B: 右递归 C: 2型 D: 含有公共左因子