『壹』 計算機編譯原理習題,寫出正規式等價的文法
1、ba*:S-〉bA,A-〉з,A-〉aA2、1(0|1)*0:S-〉1AA-〉B0,B-〉ε,B-〉0B,B-〉1B3、01*|1:運算順序,*,.(連接,可省)|,S-〉0A,S-〉1,A-〉ε,A-〉1A,4、(a|b)*a,S-〉Aa,A-〉ε,A-〉aA,A-〉bA
『貳』 哪裡可以下載《編譯原理》電子書
你需要開發環境,可以用集成的,也可以獨立的。
windows下的話,一般用集成開發環境(IDE)。
微軟的visual studio應該說最好了。我用2005版的,資料相對多一些。2008版的是為vista做的。你可以用那個體驗版/學生版的,功能少一些,但對初學者來說足矣,免費。專業版和團隊版的功能多、收費,網上有序列號。
devcpp是個相對很小的集成開發環境。程序簡單的話,用它也可以。
linux下可以用命令行下的gcc,gdb,也有anjuta,netbeans,eclipse等IDE。
當然,你最好再下載C++的電子書如:
Visual C++ 2005 入門經典
C++面向對象程序設計基礎教程
C++參考大全第四版
C++高級編程
『叄』 編譯原理詞法分析實驗中, 文件寫入順序的問題(fputs)
1)fopen在代碼中出現2次,沒有必要
2)你的程序不對 你搞混和S這個字元和TOKEN。
你的第一個WHILE讀入的是字元S,而TOKEN是由若干字元S構成的。而你的SWITCH(S)裡面按理應該是組成TOKEN的規則,而你直接就輸出了。這樣如果你要結果,我給你改了下,你看下:
int main()
{
char token[20] = {'