第1講 緒論
本講模擬練習題(不計分)
1. 編譯是對( )。
A. 機器語言的執行
B. 匯編語言的翻譯
C. 高級語言的翻譯
D. 高級語言程序的解釋執行
正確答案:C你選對了
2. 用高級語言編寫的程序經編譯后產生的程序叫( )。
A. 源程序
B. 目標程序
C. 連接程序
D. 解釋程序
正確答案:B你選對了
3. ( )不是編譯程序的組成部分。
A. 詞法分析程序
B. 代碼生成程序
C. 設備管理程序
D. 語法分析程序
正確答案:C你選對了
4. 源程序是句子的集合,( )可以較好地反映句子的結構。
A. 線性表
B. 樹
C. 完全圖
D. 堆棧
正確答案:B你選對了
5. 編譯程序是一種( )。
A. 匯編程序
B. 翻譯程序
C. 解釋程序
D. 目標程序
正確答案:B你選對了
6. 按邏輯上划分,編譯程序第三步工作是( )。
A. 語義分析
B. 詞法分析
C. 語法分析
D. 代碼生成
正確答案:A你選對了
7. 編譯程序中語法分析器接收以( )為單位的輸入。
A. 單詞
B. 表達式
C. 產生式
D. 句子
正確答案:A你選對了
8. 編譯過程中,語法分析器的任務就是( )。
A. 分析單詞是怎樣構成的
B. 分析單詞串是如何構成語句和聲明的
C. 分析語句和聲明是如何構成程序的
D. 分析程序的結構
正確答案:B你選對了
9. 語法分析時所依據的是( )
A. 語法規則
B. 詞法規則
C. 語義規則
D. 等價變換規則
正確答案:A你選對了
第1講 測驗(計分)
1. 單選(1分) 把匯編語言程序翻譯成機器可執行的目標程序的工作是由( )完成的。
A. 編譯器
B. 解釋器
C. 預處理器
D. 匯編器
正確答案:D你選對了
2. 單選(1分) ( )不是編譯程序的組成部分。
A. 詞法分析程序
B. 語法分析程序
C. 代碼生成程序
D. 設備管理程序
正確答案:D你選對了
3. 單選(1分) 通常一個編譯程序中,不僅包含詞法分析,語法分析,語義分析,中間代碼生成,代碼優化,目標代碼生成等六個部分,還應包括( )。
A. 符號執行器
B. 表格處理和出錯處理
C. 模擬執行器
D. 解釋器
正確答案:B你選對了
4. 單選(1分) 編譯程序是一種( )。
A. 解釋程序
B. 目標程序
C. 匯編程序
D. 翻譯程序
正確答案:D你選對了
5. 單選(1分) 按邏輯上划分,編譯程序第三步工作是( )。
A. 詞法分析
B. 代碼生成
C. 語法分析
D. 語義分析
正確答案:D你選對了
6. 單選(1分) 語法分析時所依據的是( )。
A. 語法規則
B. 等價變換規則
C. 詞法規則
D. 語義規則
正確答案:A你選對了
第2講 程序設計語言及其文法
本講模擬練習題(不計分)
1. 文法:\(G:S→xSx|y\) 所識別的語言是( )。
A. \(xyx\)
B. \((xyx)^*\)
C. \(x^*yx^*\)
D. \(x^nyx^n(n\ge 0)\)
正確答案:D你選對了
2. 給定文法\(A→bA|ca\),為該文法句子的是( )。
A. \(bba\)
B. \(cab\)
C. \(bca\)
D. \(cba\)
正確答案:C你選對了
3. 設有文法\(G[S]:S→S1|S0|Sa|Sc|a|b|c\),下列符號串中是該文法的句子有( )。
A. \(ab0\)
B. \(a0b01\)
C. \(a0b0a\)
D. \(bc10\)
正確答案:D你選對了
4. 文法G產生的( )的全體是該文法描述的語言。
A. 句型
B. 終結符集
C. 非終結符集
D. 句子
正確答案:D你選對了
5. 若文法G定義的語言是無限集,則文法必然是( )。
A. 遞歸的
B. 上下文無關的
C. 二義性的
D. 無二義性的
正確答案:A你選對了
6. 喬姆斯基(Chomsky)把文法分為四種類型,即0型、1型、2型、3型。其中3型文法是( )。
A. 非限制文法
B. 正則文法
C. 上下文有關文法
D. 上下文無關文法
正確答案:B你選對了
7. 一個上下文無關文法G包括四個組成部分,它們是一組非終結符號,一組終結符號,一個開始符號,以及一組( )。
A. 句子
B. 產生式
C. 單詞
D. 句型
正確答案:B你選對了
8. 若一個文法是遞歸的,則它所產生的語言的句子( )。
A. 是無窮多個
B. 是有窮多個
C. 是可枚舉的
D. 個數是常量
正確答案:A你選對了
9. 給定文法A→bA|cc,則符號串①cc ②bcbc ③bcbcc ④bccbcc ⑤bbbcc中,是該文法句子的是( )。
A. ①
B. ③④⑤
C. ②④
D. ①⑤
正確答案:D你選對了
10. 文法\(E→E+E|E*E|i\)的句子\(i*i+i*i\)有( )棵不同的語法樹。
A. 1
B. 3
C. 5
D. 7
正確答案:C你選對了
11. 文法 \(S→aaS|abc\) 定義的語言是( )。
A. \({a^{2k}bc|k>0}\)
B. \({a^{k}bc|k>0}\)
C. \({a^{2k-1}bc|k>0}\)
D. \({a^{k}b^{k}c|k>0}\)
正確答案:C你選對了
12. 文法 \(G:S→xSx| xS|y\) 所識別的語言是()。
A. \(x^myx^n(m \ge n \ge 0)\)
B. \((xyx)^*\)
C. \(x^nyx^n(n \ge 0)\)
D. \(x^*yx^*\)
正確答案:A你選對了
13. 由文法的開始符號出發經過若干步(包括0步)推導產生的文法符號序列稱為( )。
A. 語言
B. 句型
C. 句子
D. 句柄
正確答案:B你選對了
14. 下列符號串不可以由符號集\(S={a,b}\)上的正閉包運算產生的是( )。
A. ε
B. a
C. aa
D. ab
正確答案:A你選對了
15. 文法 \(G:S→xxS|y\) 所識別的語言是( )。
A. \(xxy^*\)
B. \((xxy)^*\)
C. \(xx^{*}yx\)
D. \((xx)^{*}y\)
正確答案:D你選對了
16. 文法 \(G:S→xS|y\) 所識別的語言是( )。
A. \(xy^*\)
B. \((xy)^*\)
C. \(xx^*yx\)
D. \(x^*y\)
正確答案:D你選對了
第3講 詞法分析
本講模擬練習題(不計分)
1. 詞法分析器的輸出結果是( )。
A. 單詞自身值
B. 單詞在符號表中的位置
C. 單詞的種別編碼
D. 單詞的種別編碼和自身值
正確答案:D你選對了
2. 詞法分析器不能( )。
A. 識別出數值常量
B. 過濾源程序中的注釋
C. 掃描源程序並識別記號
D. 發現括號不匹配
正確答案:D你選對了
3. ( )這樣一些語言,它們能被確定的有窮自動機識別,但不能用正則表達式表示。
A. 存在
B. 不存在
C. 無法判定是否存在
D. 以上答案都不對
正確答案:B你選對了
4. 兩個有窮自動機等價是指它們的( )。
A. 狀態數相等
B. 有向弧數相等
C. 所識別的語言相等
D. 狀態數和有向弧數相等
正確答案:C你選對了
5. 詞法分析器用於識別( )。
A. 句子
B. 產生式
C. 單詞
D. 句型
正確答案:C你選對了
6. 正則表達式\(R_{1}\)和\(R_{2}\)等價是指( )。
A. \(R_{1}\)和\(R_{2}\)都是定義在一個字母表上的正則表達式
B. \(R_{1}\)和\(R_{2}\)使用的運算符相同
C. \(R_{1}\)和\(R_{2}\)代表同一正則集
D. \(R_{1}\)和\(R_{2}\)代表不同正則集
正確答案:C你選對了
7. 已知文法 \(G[S]:S→A1\),\(A→A1|S0|0\),與G等價的正規式是( )。
A. \(0(0|1)^2\)
B. \(1^{*}|0^{*}1\)
C. \(0(1|10)^{*}1\)
D. \(1(10|01)^{*}0\)
正確答案:C你選對了
8. 與\((a|b)^*(a|b)\)等價的正規式是( )。
A. \(a^{*}|b^{*}\)
B. \((ab)^{*}(a|b)\)
C. \((a|b)(a|b)^*\)
D. \((a|b)^*\)
正確答案:C你選對了
9. 如圖所示自動機M,請問下列哪個字符串不是M所能識別的( )。
A. bbaa
B. abba
C. abab
D. aabb
正確答案:D你選對了
10. 有限狀態自動機能識別( )。
A. 上下文無關語言
B. 上下文有關語言
C. 正規語言
D. 0 型文法定義的語言
正確答案:C你選對了
11. ( )不是DFA的成分。
A. 有窮字母表
B. 多個初始狀態的集合
C. 多個終態的集合
D. 轉換函數
正確答案:B你選對了
12. DFA M(見圖)接受的字集為( )。
A. 以0開頭的二進制數組成的集合
B. 以0結尾的二進制數組成的集合
C. 含奇數個0的二進制數組成的集合
D. 含偶數個0的二進制數組成的集合
正確答案:D你選對了
13. 同正規式等價的正規式是( )。
A. \((a|b)^*\)
B. \((a|b)(a|b)^*\)
C. \((ab)^{*}(ab)\)
D. \((a|b)(a|b)^*\)
正確答案:B你選對了
14. 稱有限自動機\(A_1\)和\(A_2\)等價是指( )。
A. \(A_1\)和\(A_2\)都是定義在一個字母表上的有限自動機
B. \(A_1\)和\(A_2\)狀態數和有向邊數相等
C. \(A_1\)和\(A_2\)狀態數或有向邊數相等
D. \(A_1\)和\(A_2\)所能識別的字符串集合相等
正確答案:D你選對了
15. 同正規式\((a|b)^*\)等價的正規式為( )。
A. \((a|b)^+\)
B. \(a^{*}|b^{*}\)
C. \((ab)^*\)
D. \((a^*|b^*)^+\)
正確答案:D你選對了
16. 詞法分析器的加工對象是( )。
A. 中間代碼
B. 單詞
C. 源程序
D. 元程序
正確答案:C你選對了
17. 如果一個正規式所代表的集合是無窮的,則它必含有的運算是( )。
A. 接運算“·”
B. 或運算“|”
C. 閉包運算“* ”
D. 括號“(”和“)”
正確答案:C你選對了
18. 同正規式\(a^{*}b^{*}\)等價的文法是( )。
A. \(G1:S\to aS \mid bS \mid \varepsilon\)
B. G2:S→aSb|ε
C. G3:S→aS|Sb|ε
D. G4:S→abS|ε
正確答案:C你選對了
19. 一個正規式只能對應一個確定的有限狀態自動機。
A. \(\surd\)
B. \(\times\)
正確答案:B你選對了
20. 一個正規語言可能對應多個正規文法。
A. \(\surd\)
B. \(\times\)
正確答案:A你選對了