1 / 12
文档名称:

实验报告 算符优先分析器.doc

格式:doc   页数:12
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

实验报告 算符优先分析器.doc

上传人:经管专家 2011/12/10 文件大小:0 KB

下载得到文件列表

实验报告 算符优先分析器.doc

文档介绍

文档介绍:实验二算符优先分析器
#include ""
#include ""
#include ""
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 out(int j,int k,char *s); //打印s栈
void firstvt(char c); //求非终结符c的FIRSTVT集
void lastvt(char c); //求非终结符c的LASTVT集
void table(); //创建文法优先关系表
void main()
{
int i,j,k=0;
printf("请输入文法规则数:");
scanf("%d",&r);
printf("请输入文法规则:\n");
for(i=0;i<r;i++)
{
scanf("%s",st[i]); //存储文法规则,初始化FIRSTVT集和LASTVT集*/
first[i][0]=0; /*first[i][0]和last[i][0]分别表示st[i][0]非终极
符的FIRSTVT集和LASTVT集中元素的个数*/
last[i][0]=0;
}
for(i=0;i<r;i++) //判断文法是否合法
{
for(j=0;st[i][j]!='\0';j++)
{
if(st[i][0]<'A'||st[i][0]>'Z')
{
printf("不是算符文法!\n");
exit(-1);
}
if(st[i][j]>='A'&&st[i][j]<='Z')
{
if(st[i][j+1]>='A'&&st[i][j+1]<='Z')
{
printf("不是算符文法!\n");
exit(-1);
}
}
}
}
for(i=0;i<r;i++)
{
for(j=0;st[i][j]!='\0';j++)
{
if((st[i][j]<'A'||st[i][j]>'Z')&&st[i][j]!='-'&&st[i][j]!='>'&&st[i][j]!='|')
lable[k++]=st[i][j];
}
}
lable[k]='#';
lable[k+1]='\0';
table();
printf("每个非终结符的FIRSTVT集为:\n"); //输出每个非终结符的FIRSTVT集
for(i=0;i<r;i++)
{
printf("%c: ",st[i][0]);
for(j=0;j<first[i][0];j++)
{
printf("%c ",first[i][j+1]);
}
printf("\n");
}
printf("每个非终结符的LASTVT集为:\n"); //输出每个非终结符的LASTVT集
for(i=0;i<r;i++)
{
printf("%c: ",st[i][0]);
for(j=0;j<last[i][0];j++)
{
printf("%c ",last[i][j+1]);
}
printf("\n");
}
printf("算符优先分析表如下:\n");
for(i=0;lable[i]!='\0';i++)
printf("\t%c",lable[i]);
printf("\n");
for(i=0;i<k+1;i++)

最近更新

2024年哈尔滨城市职业学院单招职业技能考试题.. 40页

2026年优秀另辟蹊径作文范文 8页

2024年唐山幼儿师范高等专科学校单招职业技能.. 41页

2026年优秀作文窗外作文600字 15页

2026年优秀作文一件难忘的事作文 9页

高原环境对氧饱和度影响的机制研究 24页

2024年四川交通职业技术学院单招职业适应性考.. 41页

2026年伊索寓言读书笔记350字 5页

绿色包装材料回收利用技术 35页

2024年四川工程职业技术学院单招职业倾向性测.. 42页

2024年四川幼儿师范高等专科学校单招职业适应.. 41页

2024年四川托普信息技术职业学院单招职业倾向.. 39页

2024年四川文轩职业学院单招职业适应性测试模.. 41页

2024年四川汽车职业技术学院单招职业技能测试.. 41页

2026年企业租赁车辆合同范本 12页

2024年四川铁道职业学院单招职业技能考试题库.. 39页

2024年大兴安岭职业学院单招职业适应性测试题.. 39页

2024年大连枫叶职业技术学院单招综合素质考试.. 40页

2024年大连职业技术学院单招职业适应性测试题.. 41页

2024年天府新区信息职业学院单招职业倾向性考.. 42页

2024年天府新区通用航空职业学院单招职业适应.. 42页

2024年天津城市职业学院单招职业技能考试模拟.. 40页

2024年天津机电职业技术学院单招职业技能考试.. 39页

2024年天津艺术职业学院单招职业倾向性考试题.. 39页

绿色染料研发与应用 37页

2025年广州卫生职业技术学院单招职业技能测试.. 64页

美团代运营业务委托合同 6页

新概念青少版2A各单元重点归纳 15页

九年级家长会课件PPT下载(初三2班) 25页

年产3000万片硝苯地平缓释片车间设计 40页