语法分析实验报告

语法分析实验报告

ID:12588741

大小:409.00 KB

页数:16页

时间:2018-07-17

语法分析实验报告_第1页
语法分析实验报告_第2页
语法分析实验报告_第3页
语法分析实验报告_第4页
语法分析实验报告_第5页
资源描述:

《语法分析实验报告》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、编译原理实验报告实验名称:语法分析实验类型:设计性实验指导教师:蒋勇专业班级:软件1001班姓名:李岳东学号:20101557实验地点:东6A-319实验成绩:____________________________日期:2012年月日一、实验目的编译技术是理论与实践并重的课程,而其实验课要综合运用一、二年级所学的多门课程的内容,用来完成一个小型编译程序。从而巩固和加强对词法分析、语法分析、语义分析、代码生成和报错处理等理论的认识和理解;培养学生对完整系统的独立分析和设计的能力,进一步培养学生的独立编程能力。二、实验

2、设计三、实验过程1)给定文法:(文法举例)EàE+T|TTàT*F|FFà(E)|i2)构造FIRST()集和FOLLOW()集表3-1FIRST()集和FOLLOW()集FIRSTFOLLOWE(,i#,+,)T(,i#,+,),*F(,i#,+,),*四、实验结果表4-1分析成功表4-2分析失败表4-3载入文件出错流程图如下所示:五、附录:关键代码#include#include#include#include#include

3、.h>usingnamespacestd;intTESTparse();intprogram();intcompound_Stat();intstatement();intexpression_Stat();intexpression_r();intbool_expr();intadditive_expr();intterm();intfactor();intif_stat();intwhile_stat();intfor_stat();intwrite_stat();intread_stat();intdeclar

4、ation_stat();intdeclaration_list();intstatement_list();intcompound_stat();chartoken[20],token1[40];//token保存单词符号,token1保存单词值charScanout[300];//保存词法分析输出文件名FILE*fp;//用于指向输入输出文件的指针//语法分析程序intTESTparse(){intes=0;if((fp=fopen(Scanout,"r"))==NULL){printf("打开%s错误!

5、",Scanout);es=10;}if(es==0)es=program();printf("=====语法分析结果!======");switch(es){case0:printf("语法分析成功!");break;case10:printf("打开文件%s失败!",Scanout);break;case1:printf("缺少{!");break;case2:printf("缺少}!");break;case3:printf("缺少标识符!");break;case4:printf("少

6、分号!");break;case5:printf("缺少(!");break;case6:printf("缺少)!");break;case7:printf("缺少操作数!");break;}fclose(fp);return(es);}//<程序>::={<声明序列><语句序列>}//program::={}intprogram(){intes=0;fscanf(fp,"%s%s",token,token1);printf("%

7、s%s",token,token1);if(strcmp(token,"{"))//判断是否'{'{es=1;return(es);}fscanf(fp,"%s%s",&token,&token1);printf("%s%s",token,token1);es=declaration_list();if(es>0)return(es);es=statement_list();if(es>0)return(es);if(strcmp(token,"}"))//判断是否'}'{es=2;return(es);

8、}return(es);}//<声明序列>::=<声明序列><声明语句>

9、<声明语句>//::=//

10、//该成::={}intde

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。