编译原理上机 实验1 简单的词法分析子程序
理解词法分析在编译程序中的作用 初步了解和 掌握词法分析程序的实现方法和技术 【实验内容】 1. 编写程序,输入一串字符,判断该字符串是否为合法标识符或合法整型常量 。 2. 无符号 数的算术四则运算中的各类单词 的 识别。 输入: 由 无符号 数 、 + 、 - 、 * 、 / 、(、) 构成的算术表达式 。 输出: 对识别出的每一单词均单行输出 。 如 , 输入: 8*2.5-1.0e2 则,输出: 8 * 2.5 - 1.0e2 描述无符号数的确定的、最小化的状态转换图如图 1 所示。 其中编号 1 , 2 和 6 为终态,分别代表整数、小数和科学计数的识别结束状态。 图 1 文法 G[< 无符号数 >] 的状态转换图 #include <iostream> #include <string> #include <ctype.h> using namespace std; int fun(char art) { if((art>='a'&&art<='z')||(art>='A'&&art<='Z')|| art == '_') { return 1; } else if(isdigit(art)) { return 1; } else { return 0; } } void main() { int count = 0; char string[20]; cin>