电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

太原理工大学编译原理实验

太原理工大学编译原理实验_第1页
1/18
太原理工大学编译原理实验_第2页
2/18
太原理工大学编译原理实验_第3页
3/18
1 本科实验报告 课程名称: 编译原理 实验项目:无符号数的词法分析程序(实验一) 实验地点: 计算机学院软件实验室 专业班级: 学号: 学生姓名: 指导教师: *** 2 0 1 3 年 1 1 月 1 6 日 2 一、实验目的和要求 1 .培养学生初步掌握编译原理实验的技能。 2 .验证所学理论、巩固所学知识并加深理解。 3 . 对学生进行实验研究的基本训练。 二、实验内容和原理 实验一、 无符号数的词法分析程序(4 学时) 内容:掌握词法分析的基本思想,并用高级语言编写无符号数的词法分析程序。 要求:从键盘上输入一串字符(包括字母、数字等),最后以“;”结束,编写程序识别出其中的无符号数。 无符号数文法规则可定义如下: <无符号数>→<无符号实数>│<无符号整数> <无符号实数>→<无符号整数>.<数字串>[E<比例因子>]│ <无符号整数>E<比例因子> <比例因子>→<有符号整数> <有符号整数>→[+│-]<无符号整数> <无符号整数>→<数字串> <数字串>→<数字>{<数字>} <数字>→0 1 2 3...... 9 读无符号数的程序流程图见下图 3 开始0=>w,p,j1=>e数字否出错数值=〉dw*10+d=>w取下一字符数字否是‘ .’否是‘E’否退一字符‘整型’=〉CJ1取下一字符数字否出错数值=〉dw*10+d=>wj+1=>j取下一字符数字否是‘E’否取下一字符是‘-’否是‘+’否数字否数值=〉dp*10+d=>p取下一字符数字否退一字符‘实型’=>CJ1W*10C*P-J=>CJ2出口-1=>e取下一字符出错YNNNNYNYYNNYYNNYNYYNYYY 三、主要仪器设备 4 PC 机+Java 语言编程环境 四、实验结果与分析 1.实验代码: package text1; import java.io.BufferedReader; import java.io.InputStreamReader; public class Text1 { /** * @param args */ public static void main(String[] args) throws Exception { // TODO Auto-generated method stub int p = 0, w = 0, w1 = 0, j = 0, i = 0, d = 0, e = 1; double w2 = 0; String str; System.out.println("请输入一串字符以;结束:"); BufferedReader buf = new BufferedReader( new InputStreamReader(System.in)); str = buf.readLine(); char m[] = new char[100]; for (i = 0; i < str.length(); i++) { m[i] = str.charAt(i); } i = 0; while (i < str.length()) { if (m[i] < 48 || m[i] > 57)...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

太原理工大学编译原理实验

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部