- 1、本文档共7页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
词法分析程序报告及用例
题目:词法分析器设计
实验类别:
设计性实验
实验目的:
(1)掌握词法分析器的构造过程以及基本方法。
(2)理解正规式、NFA、DFA及最小化DFA的转换过程和方法。
实验内容:
给定一个正规式R=XY*|YX*Y|XYX,请先在练习本上将此正规式转变为NFA、DFA、最小化DFA;对你所完成的最小化DFA进行编程,完成词法分析器工作。
实验原理:
对于正规式
R= XY*|YX*Y|XYX
最小化DFA如下图:
设计分析:
对于给定的正规式的每一个产生式进行编码,可以将正规式分成三个部分进行编码,R=XY*,R=YX*Y和R=XYX。
对于产生式R=XY*,通过统计输入式子字符的个数与字符中Y的个数进行比较,可以判断出输入式是否为正规式R的产生式。
对于产生式R=YX*Y,首先通过判断输入式的第一个字符和最后一个字符是否为Y,是Y就再通过统计输入式子字符的个数与字符中Y的个数进行比较,可以判断出输入式是否为正规式R的产生式。
还要考虑到输入有空格的情况,当输入有空格的时候,从空格后面开始重新算作一个式子。
其他情况输出不属于正规式R。
程序代码:
头文件:search.h包含函数search1(),search2()用于查找输入字符串中X或Y的个数,而函数text()用于检测输入字符串是否属于正规式。
#include iostream.h
int m;
char s[128],h[128]; //字符数组s是判断输入串中有无空格后的字符串,字符数组h是开始输入的字符串
int count,count2;
int search1(char p[],int a)
{
count=0;
for(int d=a;dm;d++)
{
if(p[d]==Y)
count++;
}
return count;
}
int search2(char o[],int b)
{
count2=0;
for(int f=b;fm;f++)
{
if(o[f]==X)
count2++;
}
return count2;
}
void text(char k[])
{
if(k[0]==X) //第一层头字符为X的
{
if(m1)
{if(k[1]==Y)
{if(k[2]==Y)
{
search1(k,3); //查找字符中Y的个数
if(count==m-3)
coutk属于正规式 R = XY* !endl; //符合正规式XY*的字符串
else
coutk不属于正规式 R !endl;
}
else if(k[2]==X)
{ if(m3)
coutk不属于正规式 R !endl;
else
coutk属于正规式 R = XYX !endl; //符合正规式XYX的字符串
}
else
coutk不属于正规式 R !endl;
}
else
coutk不属于正规式 R !endl;
}
else if(m=1) //符合正规式X的字符串
coutk属于正规式 R = X !endl;
}
else if(k[0]==Y) //第二层头字符为Y的
{ if(k[1]==X)
{ if(k[m-1]==Y)
{ search2(k,2); //查找字符中X的个数
if(count2==m-3)
coutk属于正规式 R = YX*Y !endl; //符合正规式YX*Y的字符串
else
coutk不属于正规式 R !endl;
}
else
coutk不属于正规式 R !endl;
}
else if(k[1]==Y)
{ if(m2)
coutk不属于正规式 R !endl;
else
coutk属于正规式 R = YY !endl; //符合正规式YY的字符串
}}
else
coutk不属于正规式 R !endl; //第三层头字符随意的
}
您可能关注的文档
最近下载
- 四川省2004年肺结核流行特征及空间聚集性分析.pdf VIP
- 《小肠梗阻的诊断与治疗中国专家共识(2023版)》解读.pptx
- 回收、暂存、中转废矿物油与含矿物油废物项目突发环境事件应急预案.docx
- 电路与电子学-课程教学大纲.doc VIP
- 安徽省A10联盟2023-2024学年高二上学期11月期中考试物理试题及答案.pdf
- 第三届全国新能源汽车关键技术技能大赛(汽车电气装调工赛项)考试题库资料(含答案).pdf
- 国家科技创新政策汇编 202305.pdf
- 东华大学819有机化学2018年考研真题.pdf
- 精品推荐企业财务制度通用版汇总.docx
- 2016年东华大学硕士研究生入学考试819有机化学考研真题.pdf
文档评论(0)