第一范文网 - 专业文章范例文档资料分享平台

编译原理课设

来源:用户分享 时间:2025/5/15 7:18:09 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

“编译原理”课程设计报告 CPR-1206010231 return false; } }

else if(d=='T') //当栈顶元素为T时

{

if(s[b]=='+')

//若输入串为+

{

sc.pop();

//栈顶元素出栈

for(int i=0;i

sc.push(T.a1[i]);

//TA+入栈

}

strcpy(css,\return true; }

else if(s[b]=='#')

//若输入串为#

{

sc.pop();

//栈顶元素出栈

strcpy(css,\return true; }

else if(s[b]==')')

//若输入串为)

{

sc.pop();

//栈顶元素出栈

strcpy(css,\return true; }

Page 21 of 24

“编译原理”课程设计报告 CPR-1206010231 else {

cout<<\return false; } }

else if(d=='#') //当栈顶元素为#时

{

cout<<\接受\return false; } else

//当栈顶元素不满足以上条件时

{

cout<<\return false; } }

【实验4.4】调试与测试数据

输入字符不在分析范围中的错误界面:

Page 22 of 24

“编译原理”课程设计报告 CPR-1206010231

错误分析:输入串a不在题目的终结符集中 以下为正确执行情况下的界面: 开始界面:

输入界面:

输出界面:

Page 23 of 24

“编译原理”课程设计报告 CPR-1206010231

3 总结与体会

在这次《编译原理》课程设计实践课, 我遇到很多的问题,例如C语言中某个函数的如何编写,某些符号如何使用等等。面对这些问题,我们首先通过询问其他同学或者通过书籍,网络查找等方法解决问题,直到把问题解决。在完成课程设计的时候,我对于编译原理有了很多的认识,同时个人编程能力也得到了很大提升。

在整个课程设计过程中,我逐渐对于程序设计过程,以及编写程序的模块思想和对类和数据结构有了全新的认识,对文法、词法分析和语法分析的知识点加深了很多,同时我们对于计算机的这门学科,编译原理的课程设计以及程序编写产生更多的兴趣和激情。

致谢:

首先,感谢余宇峰老师细心地指导、提供给我的支持和给予这个锻炼的平台,其次,感谢课程设计中帮助我的同学,谢谢大家。

附录:

1. 第一题源程序:bianyi1.cpp

2. 词法分析流程图vsd文件:bianyi1.vsd 3. 词法分析流程图jpg文件:bianyi1.jpg 4. 第四题源程序:bianyi2.cpp

5. 语法分析流程图vsd文件:bianyi4.vsd 6. 语法分析流程图jpg文件:bianyi4.jpg

Page 24 of 24

搜索更多关于: 编译原理课设 的文档
编译原理课设.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c58nug6qig957eja0ptdl_6.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top