Professional Documents
Culture Documents
學號 : 姓名 : 分數 :
1. 填充題 (20%)
public class ParamTest { class CDegree {
public static void main(String args[]) { double t;
int x = 10; CDegree(double pt) {
t = pt;
System.out.println("x="+x);
}
modifyValue(x); public String toString() {
System.out.println("x="+x); return "攝氏"+t+"度";
int [] a = {10, 5}; }
}
System.out.println("a[0]="+a[0]);
modifyArray(a); class FDegree extends CDegree {
System.out.println("a[0]="+a[0]); FDegree(double pt) {
super(pt);
System.out.println("a[1]="+a[1]);
}
} public String toString() {
return "華氏 "+((9.0/5.0)*t+32)+"度";
static void modifyValue(int x) { }
}
x += 5;
} public class DegreeTest {
public static void main(String[] args) {
CDegree c = new CDegree(30.0);
static void modifyArray(int[] a) {
System.out.println("c.t="+c.t);
a[0] += 5; System.out.println("c.toString()="+c.toString());
} FDegree f = new FDegree(30.0);
} System.out.println("f.t="+f.t);
System.out.println("f.toString()="+f.toString());
c.t += 10;
System.out.println("c.t="+c.t);
}
}
ParamTest 的輸出 : DegreeTest 的 輸出 :
x= c.t=
x= c.toString()=
a[0]= f.t=
a[0]= f.toString()=
a[1]= c.t=
2.函數 (20%)
(1) 請以廻圈的方式定義一個函數 sum(),可以 將 a 陣列 (2) 請以廻圈的方式定義一個函數 reverse() 可以 將 a 陣列
的加總傳回 。(例如:若 a = {1,2,3} , 呼叫 sum(a) 後,傳 反轉 。 (例如:若 a = {1,2,3} , 呼叫 reverse 後, a 變成
回 6) {3,2,1} )
static void reverse(int[] a) {
static int sum (int[] a) {
}
}
1
金門技術學院 資管 系 夜二技一年級 程式設計 94 上學期 期末考 出題者 : 陳鍾誠
學號 : 姓名 : 分數 :
3. 程式題 (20%)
class Point {
int x, y;
} }
4. 三度空間的物件 (20%)
class Object 3D {
double volume() { return 0.0; }
}
class Ball3D extends Object3D {
double r;
Ball3D(double pr) { r = pr ; } }
double volume() { return (4.0/3.0) * 3.14 * r * r *r ; } // (2). 請填入程式碼。
} public static void main(String[] args) {
class Cube3D extends Object3D {
double w;
Cube3D(double pw) { w = pw ; }
double volume() { return w * w *w ; }
}
請填入右列主程式中的空白段:
(1) 請寫一個 sum 函數計算所有傳入之三度空間物
體的總體積。
(2) 請寫一個主程式,宣告一個 Object3D 陣列,該 }
陣列一個半徑為 2.0 的球體與一個長寬高都為 }
1.0 的立方體,接著利用 sum 計算出其總體積後
印出。
2
金門技術學院 資管 系 夜二技一年級 程式設計 94 上學期 期末考 出題者 : 陳鍾誠
學號 : 姓名 : 分數 :
5. 時間物件 (20%)
(1) 請定義一個時間物件,包含 時(hour)、分(minute)、秒
(second) 等三個欄位。
以下是上述函數的一個呼叫範例,僅供參考。
public class Test {
public static void main(String[] args) {
Time t1 = new Time(16,14,20); // 16 時 14 分 20 秒。
Time t2 = new Time(12,5,0); // 12 時 5 分 0 秒。
System.out.println("t1.toString ()="+t1.toString());
System.out.println("t1. format12()="+t1. format12());
int t3 = t1.diff(t2);
System.out.println("t3="+t3+"秒");
}
}
輸出:
t1.toString() = 16 時 14 分 20 秒。
t1. format12()=下午 4 時 14 分 20 秒。
t3= 14960 秒