实例介绍
编写一个LEX输入文件,使之生成可计算文本文件的字符数、单词数和行数且能够报告这些数字的程序。单词为不带标点或空格的字母和/或数字的序列。标点和空格不算为单词。编写一个LEX输入文件,使之可生成将SPL程序注释之外的所有关键字(保留字)均转换为大写的程序。有关SPL的关键字请见第2章或第8章所述。该LEX生成的程序要能够对SPL源程序进行分析,将不是大写的关键字转换为大写。生成如下文法表示的表达式对应的计算器: exp->exp + exp | exp – exp | exp *exp | exp / exp | exp ^exp | -exp |(exp)|NUM 对于输入的中缀表达式,要给出结果。如3+(4*5)结果应为23.要求能连续处理若干个数学表达式,直到输入结束或文件结束。 已知表达式文法的扩充巴克斯范式为: S->E# E->T+T|T-T T->F*F|F/F F->(E)|I 从键盘或文件输入表达式,利用递归下降法求出其值。若输入表达式有错,则给出报错信息。例如:输入表达式串为13+5*4,则应给出结果为23.
【实例截图】
【核心代码】
4744300845181072263.rar
└── 071_董江凯_编译原理
├── 第一类题目
│ ├── 第1题
│ │ ├── 08_实验1_董江凯.doc
│ │ ├── wordcount(PG工程)
│ │ │ ├── Debug
│ │ │ ├── mylexer.c
│ │ │ ├── mylexer.h
│ │ │ ├── mylexer.l
│ │ │ ├── mylexer.v
│ │ │ ├── wordcount.pgp
│ │ │ └── wordcount.pgw
│ │ ├── 第1题(VC工程)
│ │ │ ├── Debug
│ │ │ │ ├── mylexer.obj
│ │ │ │ ├── vc60.idb
│ │ │ │ ├── vc60.pdb
│ │ │ │ ├── 第1题.exe
│ │ │ │ ├── 第1题.ilk
│ │ │ │ ├── 第1题.pch
│ │ │ │ └── 第1题.pdb
│ │ │ ├── 第1题.dsp
│ │ │ ├── 第1题.dsw
│ │ │ ├── 第1题.ncb
│ │ │ ├── 第1题.opt
│ │ │ └── 第1题.plg
│ │ └── 结果演示
│ │ ├── test.txt
│ │ └── 第1题.exe
│ ├── 第2题
│ │ ├── 08_实验2_董江凯.doc
│ │ ├── PG工程
│ │ │ ├── mylexer.c
│ │ │ ├── mylexer.h
│ │ │ ├── mylexer.l
│ │ │ ├── mylexer.v
│ │ │ ├── 第2题.pgp
│ │ │ └── 第2题.pgw
│ │ ├── 第2题(VC工程)
│ │ │ ├── Debug
│ │ │ │ ├── mylexer.obj
│ │ │ │ ├── vc60.idb
│ │ │ │ ├── vc60.pdb
│ │ │ │ ├── 第2题.exe
│ │ │ │ ├── 第2题.ilk
│ │ │ │ ├── 第2题.pch
│ │ │ │ └── 第2题.pdb
│ │ │ ├── 第2题.dsp
│ │ │ ├── 第2题.dsw
│ │ │ ├── 第2题.ncb
│ │ │ ├── 第2题.opt
│ │ │ └── 第2题.plg
│ │ └── 结果演示
│ │ ├── test.txt
│ │ └── 第2题.exe
│ ├── 第3题
│ │ ├── 08_实验3_董江凯.doc
│ │ ├── calculater(PG工程)
│ │ │ ├── calculater.pgp
│ │ │ ├── calculater.pgw
│ │ │ ├── Debug
│ │ │ ├── myparser.c
│ │ │ ├── myparser.h
│ │ │ ├── myparser.v
│ │ │ └── myparser.y
│ │ ├── Calculater(VC工程)
│ │ │ ├── calculater.dsp
│ │ │ ├── calculater.dsw
│ │ │ ├── calculater.ncb
│ │ │ ├── calculater.opt
│ │ │ ├── calculater.plg
│ │ │ └── Debug
│ │ │ ├── calculater.exe
│ │ │ ├── calculater.ilk
│ │ │ ├── calculater.pch
│ │ │ ├── calculater.pdb
│ │ │ ├── myparser.obj
│ │ │ ├── vc60.idb
│ │ │ └── vc60.pdb
│ │ └── 结果演示
│ │ ├── calculater.exe
│ │ └── test.txt
│ ├── 第4题
│ │ ├── 08_实验4_董江凯.doc
│ │ ├── Calcu(VC工程)
│ │ │ ├── Calcu.dsp
│ │ │ ├── Calcu.dsw
│ │ │ ├── Calcu.ncb
│ │ │ ├── Calcu.opt
│ │ │ ├── Calcu.plg
│ │ │ └── Debug
│ │ │ ├── Calcu.exe
│ │ │ ├── Calcu.ilk
│ │ │ ├── Calcu.pch
│ │ │ ├── Calcu.pdb
│ │ │ ├── myparser.obj
│ │ │ ├── vc60.idb
│ │ │ └── vc60.pdb
│ │ ├── yacc_vc(PG工程)
│ │ │ ├── Debug
│ │ │ ├── myparser.c
│ │ │ ├── myparser.h
│ │ │ ├── myparser.v
│ │ │ ├── myparser.y
│ │ │ ├── yacc_vc.pgp
│ │ │ └── yacc_vc.pgw
│ │ └── 结果演示
│ │ ├── Calcu.exe
│ │ └── test.txt
│ └── 第5题
│ ├── 08_实验5_董江凯.doc
│ ├── LL1(vc工程)
│ │ ├── Debug
│ │ │ ├── LL1.exe
│ │ │ ├── LL1.ilk
│ │ │ ├── ll1.obj
│ │ │ ├── LL1.pch
│ │ │ ├── LL1.pdb
│ │ │ ├── vc60.idb
│ │ │ └── vc60.pdb
│ │ ├── ll1.cpp
│ │ ├── LL1.dsp
│ │ ├── LL1.dsw
│ │ ├── LL1.ncb
│ │ ├── LL1.opt
│ │ └── LL1.plg
│ └── 结果演示
│ └── LL1.exe
└── 课程设计报告(答辩).ppt
29 directories, 100 files
标签:
相关软件
小贴士
感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。
- 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
- 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
- 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
- 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。
关于好例子网
本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明
网友评论
我要评论