对文法:
//(1)E->S //拓广文法
//(2)S->BB
//(3)B->aB
//(4)B->b
//LR(0)分析法
输入
一个句子
输出
分析过程与结果
样例输入复制
ab#
样例输出复制
1 0 # aab# S3
2 03 #a ab# S3
3 033 #aa b# S4
4 0334 #aab # r3 6
5 0336 #aaB # r2 6
6 036 #aB # r2 2
7 02 #B # error
代码如下:
#include <iostream> #include <list> #include <sstream> #include <iomanip> using namespace std; // 分析表 int vn_length = 3; int vt_length = 3; int item_set_length = 7; string vn[3] = { "E", "S", "B" }; string vt[3]