南华大学实验名称:算符优先分析程序学院:计 算 机 学 院专业班级:本 2010 电气信息类 03 班学号:20104030342 姓名:谢志兴指导教师:吴取劲日期:2012 年6 月12 日实验二算符优先分析程序一、实验目的调试并完成一个算符优先分析程序,加深对算符优先分析原理的理解
二、实验要求算符优先分析程序的功能:输入:所给文法的源程序字符串、待匹配字符串
输出:转化后的文法、每个非终结符的FIRSTVT 集和 LASTVT 集、算符优先分析表、规约过程
三、源程序代码:#include "stdio
h" #include "stdlib
h" #include "iostream
h" char data[20][20]; //算符优先关系char s[100]; //模拟符号栈 s char lable[20]; //文法终极符集char input[100]; //文法输入符号串char string[20][10]; //用于输入串的分析int k; char a; int j; char q; int r; //文法规则个数int r1; //转化后文法规则个数char st[10][30]; //用来存储文法规则char first[10][10]; //文法非终结符 FIRSTVT 集char last[10][10]; //文法非终结符 LASTVT 集int fflag[10]={0}; //标志第 i 个非终结符的 FIRSTVT 集是否已求出int lflag[10]={0}; //标志第 i 个非终结符的 LASTVT 集是否已求出int deal(); //对输入串的分析int zhongjie(char c); //判断字符 c 是否是终极符int xiabiao(char c); //求字符 c 在算符优先关系表中的下标void ou