lawpalyer logo

資訊處理 93 年程式語言考古題

民國 93 年(2004)資訊處理「程式語言」考試題目,共 5 題 | 資料來源:考選部

0 題選擇題 + 5 題申論題

以下列文法(Grammar)為例:(20 分) <exp> → <exp> + <exp>∣<exp> * <exp>∣<id> <id> → A∣B∣C 說明何謂模糊文法(Ambiguous Grammar)。 簡述如何將該文法改正,以消除其模糊性(Ambiguity)。
簡釋何謂布林運算子(Boolean operator)之短路運算(Short-Circuit Evaluation)。 (20 分) 短路運算有何優點?又有何缺點? 簡述C 與ADA 各如何處理布林運算子。
試以反覆技術(Iteration),設計一個計算n 階乘之次程式(Subprogram),其中 整數n 為該次程式之參數(Parameter)。 試以遞迴技術(Recursion),設計該計算n 階乘之次程式。 注意:必需註明所用之語言,每一敘述都必需加上註解說明其意義,否則不予 計分。(20 分)
選用ADA、C++、JAVA 中之任一程式語言,以抽象資料結構(Abstract data type)或物件(Object)技術,設計二元樹(Binary tree)及其相關函數。 設計一主程式,利用所設計的二元樹,將輸入的一些數字資料建立成為二元搜尋 樹(Binary search tree)。 (20 分)
寫出執行下列C 程式所列印的結果並說明理由:(20 分) void main() {int i = 10, j = 10, ans1, ans2; ans1 = i + fun(&i); ans2 = fun(&j) + j; printf(“Ans1 = %d Ans2 = %d”, ans1, ans2); } int fun(int *k) {*k += 5; return *k – 2; }