1 #include<stdio.h> 2 #include <ctype.h> 3 #define ok 1 4 #define error 0 5 #define MAXREGLUARLONG 40 6 #define MAXSTATELONG 40 7 #define MAXCAHRSLONG 40 8 typedef int state; 9 int iCurrentState=0; //初态以1开始 10 int iPreState=0; 11 int iLastForkState=0; 12 int iForkState=0; 13 int iMaxState=0; 14 char cRegluarSting[MAXREGLUARLONG]; //输入的正规式字符串 15 char cCharSet[MAXCAHRSLONG]; //字符集 16 int iStateMatrix[MAXSTATELONG][MAXCAHRSLONG]; //状态转换矩阵 17 state vStoreRegluarSting()//把字符串读入一个缓冲区中 18 { 19 scanf("%s",cRegluarSting); 20 return ok; 21 } 22 state vPreProcessRegluarSting() 23 //对字符串进行预处理,去掉字符串里面的对分析不产生影响 24 { 25 int i=0; 26 while(cRegluarSting[i]!='