词法分析程序实验报告一、 实验内容设计并实现C语言的词法分析程序,要求如下:1) 可以识别C语言编写的源程序中的每个单词符号,并以记号的形式输出每个单词。2) 可以统计并读取源程序中的注释。3) 可以统计源程序中的语句行数、单词个数和字符个数,并输出统计结果。其中回车换行不计入字符个数,空格不计算为单词。4) 检查源程序中存在的错误,并可以报告错误所在的行列位置。5) 发现源程序中存在错误后,进行适当的恢复,使词法分析可以继续进行,通过一次词法分析处理,可以检查并报告源程序中存在的所有错误。二、 程序特色1) 全部实现上述实验要求2) 标识符规则符合标准C语言要求,允许以下划线开头,并包含下划线3) 可识别C语言允许的所有无符号实数形式,包括整数和浮点数。其中浮点数可包含指数e或E,并遵循C语言允许省略整数部分(如.5表示0.5)或省略小数部分(如2.E2表示2.0*102)4) 可识别几乎C语言所有标点符号和运算符,共计50个5) 可正确识别字符和字符串中的转义字符,如和“abcd”均可识别为单词不完整,并指出错误的行和列