法读入和输出程序,4、测试程序运行效果:从文本文件中读入一个文法,在屏幕上输出,检查输出结果。
六、测试数据
输入数据:编辑一个文本文文件gtxt,在文件中输入如下内容:SQcScQRbQbRSaRa正确结果:上述文法整理后的输出形式:SQccQRbbRSaa
七、实验报告要求
实验报告应包括以下几个部分:1、文法数据结构的设计和实现;2、文法的读入算法3、文法的输出方法4、程序的测试结果和问题5、实验总结
八、思考题
1、如何让设计的文法结构满足各种文法的要求?2、如何设计文法才能跟简单地表示文法,同时又降低程序编写难度?
4
f实验2
一、实验目的
词法分析程序的设计
掌握计算机语言的词法分析程序的开发方法。
二、实验内容
编制一个能够分析三种整数、标识符、主要运算符和主要关键字的词法分析程序。
三、实验要求
1、根据以下的正规式,编制正规文法,画出状态图;标识符十进制整数八进制整数十六进制整数运算符和界符关键字字母字母数字字符0(123456789)(0123456789)0(1234567)(01234567)0x(0123456789abcdef)(0123456789abcdef);ifthe
elsewhiledo
2、根据状态图,设计词法分析函数i
tsca
,完成以下功能:1)从文本文件中读入测试源代码,根据状态转换图,分析出一个单词,2)以二元式形式输出单词单词种类,单词属性其中单词种类用整数表示:0:标识符1:十进制整数2:八进制整数3:十六进制整数运算符和界符,关键字采用一字一符,不编码其中单词属性表示如下:标识符,整数由于采用一类一符,属性用单词表示运算符和界符,关键字采用一字一符,属性为空3、编写测试程序,反复调用函数sca
,输出单词种别和属性。
四、实验环境
PC微机DOS操作系统或Wi
dows操作系统TurboC程序集成环境或VisualC程序集成环境
五、实验步骤
1、根据正规式,画出状态转换图;2、根据状态图,设计词法分析算法;3、采用C或C语言,设计函数sca
,实现该算法;4、编制测试程序(主函数mai
);
5
f5、调试程序:读入文本文件,检查输出结果。
六、测试数据
输入数据:编辑一个文本文件programtxt,在文件中输入如下内容:ifdata920x3fthe
datadata01elsedatadata01正确结果:if0data19233fthe
0data0data21else0data0data2
七、实验报告要求
实验报告应包括以下几个部分:1、r