编译原理实验报告_计算机软件及应用_IT计算机_专业资料

编译原理实验报告_计算机软件及应用_IT计算机_专业资料

ID:44111532

大小:90.50 KB

页数:5页

时间:2019-10-18

编译原理实验报告_计算机软件及应用_IT计算机_专业资料_第1页
编译原理实验报告_计算机软件及应用_IT计算机_专业资料_第2页
编译原理实验报告_计算机软件及应用_IT计算机_专业资料_第3页
编译原理实验报告_计算机软件及应用_IT计算机_专业资料_第4页
编译原理实验报告_计算机软件及应用_IT计算机_专业资料_第5页
资源描述:

《编译原理实验报告_计算机软件及应用_IT计算机_专业资料》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、实验名称:实验1.1词法分析姓名:王欣学号:—201490514150_班级:文计指定验收时间:电子文档:提交时间提前/按时/延时/未提格式正确—基本正确—不正确—实验报告:提交时间提前/按时/延时非常好—完整—合格—不合格—验收记录:时间顺序—、原创性声明列出程序中参考的部分及来源-课程提供的范例、网上资源、同学帮助(需要写明参考了谁的源码)、参考书等……全部程序都是自己编写的。二、实验要求用C语言程序对下列正则表达式进行此法分析。abc(ab)*a三、完成情况基本上实现了正则表达式的功能。四、实现方案1.将正

2、则表达式转换成NFA;2.将NFA确定化为DFA;3.将DFA最小化;4.编程。五、创新和亮点设计本程序吋先将正则表达式转换为NFA,然后将NFA转换成DFA,并实现了最小化,所以本程序简单明了,耗时较少,不会出错。六、运行结果给出尽可能完备的测试用例及测试结果(截图)1.能达到状态1,不能到达状态2的情况:・・E:COMPILERDebug语法分祈€・・・1口I回请输入要匹配的字符:aba输入的字符串为:aba匹配失败?.Pressanykeytocontinue川2.能到达状态1和状态2:3・能反复到达状

3、态1和状态2的情况:I・E:COMPILERDebug语法分•・・U回请输入要匹配的字符:abaabababaa输入的字符串为:abaabababaa匹配成功?Pressanykeytocontinue14.不能到达状态1的情况:•E:COMPILERDebug语法分听O.ex....请输入要匹配的字符:caasd输入的字符串为:caasd匹配失败?PressanykeytocontinueHr■・E:COMPILERDebugiBiX...I口I回I—口"I请输入要匹配的字符:1babbaa输入

4、的字符串为:babbaa兀配失败?PressanykeytocontinueQhi亟七、源码参考的模块可以给出函数定义或简短说明自己完成的部分需打印出全部源码源码打印好后,用红色的笔大致标出以下三个部分令范例程序中已有的部分令自己修改增添的部分令网上下载或参考别人的程序片段#include#include#includevoidmatch();voidfail();voidmain(){char*c,t[9999];printf("请输入要匹配的字符:"

5、);gets(t);c=t;printf("输入的字符串为:”,c);puts(c);match(c);}voidmatch(char*c){char*p=c;staticintstatc=O;switch(state)case0:if(*(p++)='a'&&*(p++)==V&&*(p++)=N){state=1;match(p);}elsefail();break;case1:if(*p==lbt){state=1;p++;match(p);}elseif(*p==a,){state=2;p++;matc

6、h(p);)elsefail();break;case2:if(*p==la,){state=2;p++;match(p);}elseif(*p==,b,){state=1;p++;match(p);)elseif(*p==,,)prindT匹配成功!”);elsefail();bicak;}}voidfail()printf(°匹配失败!J;

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

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

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