版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、中北大学软件学院实 验 报 告专业软件工程课程名称编译原理学号姓名精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 1 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 1 页,共 9 页 - - - - - - - - -辅导教师张静成绩实验日期2015.5.19实验时间14:00 18:001 实验名称计算器的设计与实现2、实验目的掌握自上而下语法分析方法、自下而上语法分析方法3、实验要求(1) 实验内容设计及实现计算表达式的计算器。表达式中可包含 +、-
2、、*、/ 、(、)等运算符。(2) 实验要求:对已给的一个二元式形式表达式,能够检查有无语法错误。 并指定出错位置。将表达式的语法树输出(或将语法分析过程输出)。4、实验原理根据自上而下和自下而上的语法分析思想实现语法分析程序。5、实验步骤 (1) 根据文法构造语法分析表。(2) 编写总控程序实现语法分析。精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 2 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 2 页,共 9 页 - - - - - - - - -
3、6、算法优先分析表及语法分析程序/算法优先分析表精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 3 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 3 页,共 9 页 - - - - - - - - -/计算器的设计与实现源代码.cpp #include #include #define maxsize 99 void translate(char str,char exp) struct char datamaxsize; int top; op; cha
4、r ch; int i = 0,t = 0; op.top = -1; ch = stri; i+; while(ch != 0) switch(ch) case (: op.top+;op.dataop.top=ch; break; case ): while(op.dataop.top != () expt=op.dataop.top; op.top-; t+; op.top-; break; case +: case -: while(op.top != -1&op.dataop.top != () 精品学习资料 可选择p d f - - - - - - - - - - - -
5、- - 第 4 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 4 页,共 9 页 - - - - - - - - - expt = op.dataop.top; op.top-; t+; op.top+; op.dataop.top = ch; break; case *: case /: while(op.dataop.top = /|op.dataop.top = *) expt = op.dataop.top; op.top-; t+; op.top+; op.dataop.top = ch;
6、 break; case : break; default: while(ch = 0&ch = 0&ch 输入一个表达式: n); gets(str); printf( 原表达式 :%sn,str); translate(str,exp); printf( 逆波兰式: %sn,exp); printf( 计算结果 :%gnn,cal_value(exp); printf( 是否进行下一个运算 (y/n)?:); scanf(%c,&ch); if(ch=y | ch=y) gets(str); else break; /system(pause); return 0;
7、 精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 7 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 7 页,共 9 页 - - - - - - - - -7、测试及结果1、加减法运算2、乘除法运算3、带()运算4、四则运算精品学习资料 可选择p d f - - - - - - - - - - - - - - 第 8 页,共 9 页 - - - - - - - - -精品学习资料 可选择p d f - - - - - - - - - - - - - - 第
8、8 页,共 9 页 - - - - - - - - -5、容错处理8、心得本次课程设计是实现一个简易的计算器,这次课程设计采用逆波兰式的知识,这可以很好的表示简单算术表达式,其优点在于易于计算机处理表达式。本次设计使我进一步端正了我的学习态度,学会了实事求是,对自己要严格要求。我觉得动手做设计之前,头脑里必须清楚该怎么做,这一点是很重要的。就目前来说,我的动手能力虽然差一点,但我想,通过我的不懈努力,在这方面,我总会得到提高。在此次的课程设计中我最大的体会就是进一步认识到了理论联系实践的重要性。总而言之,此次课程设计让我学到了好多平时在课堂上学不到的东西,增加了我的知识运用能力,增强我的实际操作能力。我相信经过实践后的学习我可以将编译原理这门课程掌握的更好。精品学习资料 可选择p d f -
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 公务车辆审批制度
- 公司出差审批管理制度
- 公司标识审批制度
- 公款借用审批制度
- 公路项目审批制度
- 关联交易分级审批制度
- 内部改造审批制度
- 农庄明火作业审批制度
- 农村财务审批制度
- 初中财物审批制度
- 2026年3月15日九江市五类人员面试真题及答案解析
- 2026“蓉漂人才荟”成都东部新区事业单位公开招聘事业人员(30人)笔试参考题库及答案解析
- 机械类专职安全生产管理人员(C1)题库
- 2026年扎兰屯职业学院单招职业技能考试题库及答案解析
- 慈善总会考核制度
- 老年骨质疏松骨折的长期随访管理
- 2026中国烟草招聘面试题及答案
- 萤石矿采选项目社会稳定风险评估报告
- 乙状结肠护理查房
- 客运驾驶员汛期安全培训
- 《模拟电子技术》全套教学课件
评论
0/150
提交评论