軟體構造實驗三 遞迴下降分析分析法

2022-03-30 21:13:16 字數 1119 閱讀 3585

【實驗目的】 

(1)掌握自上而下語法分析的要求與特點。 

(2)掌握遞迴下降語法分析的基本原理和方法。 

(3)掌握相應資料結構的設計方法。  

【實驗內容】 

用遞迴下降法編寫乙個語法分析程式,使之與詞法分析器結合,能夠根據語言的上下文無關文法,識別輸入的單詞序列是否文法的句子。

【實驗要求】 

對下列文法,用遞迴下降分析法對任意輸入的符號串進行分析:

e->tg    g->+tg|-tg   g->ε

t->fs    s->*fs|/fs    s->ε

f->(e)     f->i

**精髓:

根據上述分析法進行建立

void e();

1

void

e()2

void e()

void t();

1

void

t()2

void t()

void g();

1

void

g()2

11else

if (str[lookahead] == '-'

)1219 cout << "

g->ε\t\t";

20fen();

21sheng();

22 leaf = 1;23

24 }

void g()

void f();

1

void

f()2

1011

else

if (str[lookahead] == '('

)1221else

2227

28 }

void f()

void s();

void s()

執行結果:

實驗三 遞迴下降分析程式實驗

實驗三 遞迴下降分析程式實驗 專業 軟體工程 姓名 麥振澎 學號 201506110162 一 實驗目的 通過設計,編制,除錯乙個遞迴下降語法分析程式,實現對詞法分析程式所提供的單詞序列進行語法檢查和結構的分析。二 實驗內容和要求 輸入 源程式字串 輸出 正確或者錯誤 三 實驗方法 步驟及結果測試 ...

實驗三 遞迴下降分析程式

實驗三遞迴下降分析程式實驗 專業 商軟2班 姓名 鄺啟彬 學號 201506110165 一 實驗目的 編制乙個遞迴下降分析程式。二 實驗內容和要求 輸入 正規式 輸出 判斷該正規式是否正確。三 實驗方法 步驟及結果測試 1.源程式名 遞迴下降分析程式.c 可執行程式名 遞迴下降分析程式.exe 2...

遞迴下降語法分析實驗

通過設計 開發乙個高階語言的遞迴下降語法分析程式,實現 對詞法分析程式所提供的單詞序列進行語法檢查和結構分析,加 深對相關課堂教學內容的理解,提高語法分析方法的實踐能力。1 理解語法分析在編譯程式中的作用,以及它與詞法分析程式的 關係 2 掌握遞迴下降語法分析方法的主要原理 3 理解遞迴下降分析法對...