算符优先实验报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

算符优先分析实验报告一、程序功能实现算符优先分析算法,完成以下描述算术表达式的算符优先文法的算符优先分析过程。G[S]:S-#E#E-E+T|TT-T*F|FF-P^F|PP-(E)|i二、主要数据结构charVT[]定义符号表;structtype{charorigin;chararray[5];intlength;}定义产生式类型;table[][]定义优先关系矩阵。三、程序结构intlocate(chars[],charc)辅助函数,在一个字符串中查找某特定字符;intFind(typeG[],chars[],intm,intn)查找与已搜索出的短语对应的产生式,返回该产生式的序号;voiddoScan()对输入串进行分析的主控函数;voidprint(chars[],intk,inttag,charstr[],inti,charaction[])输出分析过程的函数。在find()和doScan()中调用locate()函数,在doScan()中调用find()和print()函数,在main()中调用doScan()函数。流程图:NYNYNYNNYY成功四、程序测试测试句子:i+i*i结果:S[k]=’#’;k=1;i=0a=str[i]S[k]属于VT?j=kS[j]a?b=S[j]S[j-1]属于VT?S[j]b?j=-1S[j+1]…S[k]最左素短语,k=j+1,S[k]=Nj=k-1k=k+1;S[k]=aj=-2k=2;a=#归约移进测试句子:(i+i)*i结果:五、实验总结本实验重点解决算符优先矩阵的构造和算符优先算法的实现,我认为难点是构造优先矩阵,这个就需要掌握方法多练习,优先算法只需将PPT上的流程图一步一步地转化为代码就可以了。总体来说,本实验比较简单。

1 / 3
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功