版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 1 / 8 /文法为/(0)E' #E#/(1)E E+T /(2)E T/(3)T T*F /(4)T F/(5)F PF /(6)F P/(7)P (E) /(8)P i /根据算符优先文法的分析规则求得终结符优先关系表/ + * i ( )
2、0; #/ + > < < < < > >/ * > > < < &
3、#160; < > >/ > > < < < > >/ i > >
4、160; > > >/ ( < < < < < = /
5、60; ) > > > > >/ # < < < < &
6、#160; < =#include<stdlib.h>#include<stdio.h>#include<dos.h>#include<stdio.h>#include<string.h>#include<ctype.h>#include<iostream.h>#define SIZE 128char youxian77; /算符优先关系数组char lexbufSIZE; /存放输入的
7、要进行分析的句子char lexSIZE; /存放剩余串char fenxizhanSIZE;/分析栈void fenxi();int panduanyou(char x);void shengyuchuan();int k;void zengjia();void main() /将算符优先关系存放在算符优先关系数组里 youxian00='>' youxian01='<' youxian02='<' youxian
8、03='<' youxian04='<' youxian05='>' youxian06='>' /_ youxian10='>' youxian11='>' youxian12='<' youxian13='<' youxian14='<' youxian15='>'
9、;youxian16='>' /_ youxian20='>' youxian21='>' youxian22='<' youxian23='<' youxian24='<' youxian25='>' youxian26='>' /_ youxian30='>' youxian31=
10、9;>' youxian32='>' youxian33='$'/无优先关系的用$表示 youxian34='$' youxian35='>' youxian36='>' /_ youxian40='<' youxian41='<' youxian42='<' &
11、#160; youxian43='<' youxian44='<' youxian45='=' youxian46='$' /_ youxian50='>' youxian51='>' youxian52='>' youxian53='$'
12、; youxian54='$' youxian55='>' youxian56='>' /_ youxian60='<' youxian61='<' youxian62='<' youxian63='<' youxian64='<
13、39; youxian65='$' youxian66='=' /_ printf("现在就要进行算符优先分析,请做好准备 n"); printf("*n"); printf("请输入要进行分析的句子n&q
14、uot;); cin.get(lexbuf,SIZE); /将输入的字符串存到数组 printf("步骤 栈 优先关系 当前符号 剩余输入串 移进或归约n"); k=0; fenxizhank='#' fenxizhank+1='0' int lenth,i1; /初始化 剩余串数
15、组为输入串 lenth=strlen(lexbuf); for(i1=0;i1<lenth;i1+) lexi1=lexbufi1; lexi1='0' fenxi(); void fenxi() int i,j,f,z,z1,n,n1,z4,n4; int flag=0;/操作的步骤数 char a; /存放正在分析的字符 char p6,Q,p1,p4;
16、0; f=strlen(lexbuf); /测出数组的长度 for(i=0;i<f;i+) a=lexbufi; if(fenxizhank='+'|fenxizhank='*'|fenxizhank=''|fenxizhank='i'|fenxizhank='('|fenxizhank=')'|fenxizhank='#') j=k; else &
17、#160; j=k-1; z=panduanyou(fenxizhanj);/ 从优先关系表中查出sj和a的优先关系 if(a='+'|a='*'|a=''|a='i'|a='('|a=')'|a='#') n=panduanyou(a); else /如果句子含有不是终结符集合里的其它字符,不合法 p
18、rintf("error!不合法的句子"); break; p6=youxianzn; if(p6='>') loop: Q=fenxizhanj; if(fenxizhanj-1='+'|fenxizhanj-1='*'|fenxizhanj-1=''|fenxizhanj-1='i'|fenxizhanj-1='('|fenxizhanj-1=')
19、9;|fenxizhanj-1='#') j=j-1; else j=j-2; z1=panduanyou(fenxizhanj); n1=panduanyou(Q); p1=youxianz1n1; if(p1='<') /fenxizhanj+1fenxizhank归约为N k=j+1;
20、160; shengyuchuan(); flag+; printf("(%d) %s %c %c %s
21、0; 归约n",flag,fenxizhan,p6,a,lex); i-; fenxizhank='N' int hou,hou1; hou=strlen(fenxizhan); for(hou1=k+1;hou1<hou;hou1+) fenxizhanhou1='0'/多个字符归约,把栈顶后面的舍弃 zengjia();/归约剩余串没变化
22、; else goto loop; else if(p6='<') /移进 有一个问题就是如果上一步是不归约,剩余的字符串减少一个 shengyuchuan(); &
23、#160; lexbuff='0' flag=flag+1; printf("(%d) %s %c %c %s
24、0; 移进n",flag,fenxizhan,p6,a,lex); /printf("1 "); /printf(" %s ",fenxizhan); /printf(" %c ",p); / printf("
25、; %c ",a); /printf(" %s",lex); /printf(" 移进n"); / printf("%s",lex); /printf(&qu
26、ot;(i)"); k=k+1; fenxizhank=a; else if(p6='=') z4=panduanyou(fenxizhanj); n4=panduanyou('#'); p4=youxianz4n4; if(p4='=')
27、60; shengyuchuan(); flag+; printf("(%d) %s %c %c %s 接受n",flag,fenxizhan,p6,a,lex); printf("合法的句子"); break;
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 丙烯酸及酯装置操作工安全教育强化考核试卷含答案
- 热工计量员岗位活动策划考核试卷含答案
- 记号笔制造工岗位QC管理考核试卷含答案
- 芳香烃生产工合规能力考核试卷含答案
- 废胶再生工安全文明考核试卷含答案
- 局部解剖知识测试题及答案
- 2026年中考二轮复习之选择题复习5:《一次方程(组)及其应用》(学生版+教师版合并)
- 宋代历史试题及精准答案
- 2026年春招:中国林业题库及答案
- 腹股沟疝气的考题及对应答案
- 集装箱堆放制度规范
- 2026小红书商业产品全景手册
- DB5334∕ T 7-2022 《暗紫贝母育苗技术规程》
- 2025年杭州市富阳区卫健系统事业单位招聘编外人员43人考试参考试题及答案解析
- 铁路防寒过冬培训课件
- 面粉厂安全隐患排查与整改措施
- 内燃机 摇臂滚轮销、活塞销类金刚石涂层(DLC)工艺规范
- CJ/T 527-2018道路照明灯杆技术条件
- 国际贸易学 第五版 课件全套 金泽虎 第1-14章 导论、传统国际贸易理论-国际贸易与经济增长
- 《翰墨之情》教学课件-2024-2025学年苏少版(2024)初中美术七年级上册
- 2025年北京市延庆区中考零模语文试题(原卷版+解析版)
评论
0/150
提交评论