[開課學院]: 資電學院
[開課系所]: 資訊工程
[課程名稱]: 程式語言
[老師名稱]: 戴嬋玲
[開課學期]: ??
[類型]: ??期末考
一、 簡答題
1. 當副程式可作為參數來傳送時,決定此副程式的參考環境之方法有哪些?
2. Ada中的參數以semantics model來定義,可分成哪些?
3. Ada中的Data abstraction construct為何?
4. C++中用來定義自訂抽象資料型態的語法單元分別為何?
5. Object Oriented model程式語言有哪些特點?
二、 問答題
1. 採用Static scoping rule的程式語言,為何在執行時期堆疊(run-time stack)中需要
有static chain和dynamic chain?說明這兩個指標的作用。
2. 就軟品工程(software engineering)的觀點而言,通用副程式有何優點?說明之。
3. Object Oriented model程式語言的基本組成元素為何?請以C++或Java為例說明之。
4. 請說明(a)exception handing control flow和
(b)exception propagation,在C++中Exception propagation如何表示?
5. 下列的ALGOL程式以call by name傳遞參數。函數呼叫結果為何?
(a) SUM(3.0, I, 100) (b) SUM(A[i]*B[i], I, 3)
/*for problem(5)*/
/*設A[I]之值為I+1,B[I]之值為I*/
Real procedure SUM(ADDER, INDEX, LENGTH);
value LENGTH;
real ADDER;
integer INDEX, LENGTH;
begin
real TEMPSUM;
TEMPSUM := 0.0;
For INDEX := 1 step 1 until LENGTH do
TEMPSUM := TEMPSUM + ADDER;
SUM := TEMPSUM;
End;
6. 何謂overload subprogram?如何判斷所要呼叫的是哪個overloaded subprogram?
7. 以下的函數定義為例,說明下列的函數呼叫分別引用哪一個函數?
(a) T := F(V); (b) T := F(U); (C) T := F(K(S));
/**for problem(7)/
Procedur MAIN is
…
Package P is
Function F(X:REAL) return RANGE;--P.F
Function G(X:DOMAIN) return REAL;--P.G
Function K(X:DOMAIN) return BOOLEAN;--P.K
End P;
Function F(X:BOOLEAN) return RANGE;--M.F
Function G(X:DOMAIN) return BOOLEAN ;--M.G
Function K(X:DOMAIN) return REAL;--M.K
S : DOMAIN; T : RANGE;
U : BOOLEAN; V : REAL;
Use P;
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 59.127.90.135
※ 編輯: anxor 來自: 59.127.90.135 (01/16 23:16)