您現在的位置是:首頁 > 動作武俠首頁動作武俠

JAVA程式設計練習題一(附答案)

簡介println(temp)

所有異常都必須捕獲嗎

JAVA程式設計練習題一(附答案)

一、單項選擇題(每題2分,共40分)

1、下列選項中,不屬於Java語言特點的一項是( C )。

A、分散式 B、安全性 C、編譯執行 D、面向物件

2、下列API不屬於java 。1ang。Math類的一個是( C )。

A、random() B、abs() C、drawLine() D、sin()

3、抽象方法:( C )

A、可以有方法體 B、可以出現在非抽象類中

C、是沒有方法體的方法 D、抽象類中的方法都是抽象方法

4、下列的變數定義中,錯誤的一個是( B )。

A、int i; B、int 22_$; C、int i=Integer。MIN_VALUE; D、static short a=10;

5、如果在編譯Java程式時,編譯結果報告說找不到要編譯的程式碼,通常的錯誤不是如下的哪一項?( A )

A、沒有import相應的包 B、檔名拼寫錯誤

C、未加。java字尾 D、原始檔不在當前目錄下

6、在Java中下列哪種技術屬於垃圾回收機制? ( C )

A、位元組編譯 B、語法檢查 C、記憶體跟蹤 D、堆疊上/下溢檢查

7、下列說法中正確的一個是( A )。

A、識別符號區分大小寫 B、”a”不是一個字串

C、float f=3。14;是合法的語句 D、float f=(int)3。14;不是合法的語句

8、已知定義:int a[ ]={1,2,3,4,5,6,7,8,9,10} ;,為了列印輸出陣列a的最後一個元素,下面正確的程式碼是( B )。

A、System。out。println(a[10]); B、System。out。println(a[9]);

C、System。out。println(a[a。1ength]); D、System。Out。println(a(8));

9、下列關於異常使用原則的說法中錯誤的一項是( A )。

A、程式中所有異常都可以不用捕獲處理

B、終止程式,不讓程式繼續向下執行

C、使問題簡化,不用花很多時間在跟蹤錯誤上

D、讓程式更安全

10、下列關於Java程式結構的描述中,不正確的一項是( C )。

A、一個Java原始檔中可以包括一個package語句

B、一個Java原始檔中可以包括多個類定義,但是隻能有一個public類

C、一個Java原始檔中可以有多個public類

D、原始檔名與程式類名必須一致

11、下列哪一項不屬於AWT佈局管理器?( D )

A、GridLayout B、CardLayout C、BorderLayout D、BoxLayout

12、下列說法中不正確的一項是( A )。

A、Tread類中沒有定義run()方法 B、可透過繼承Thread類來建立執行緒

C、Runnable 類中定義了run()方法 D、可以透過實現Runnable介面來建立執行緒

13、下列哪一項是java。applet。Applet的子類?( A )

A、javax。swing。JApplet B、java。awt。Panel

C、java。awt。Window D、javax。swing。JFrame

14、下列命名符合java命名方式的是?( B )

A、char B、dfe C、*—— D、#09!

15、下列關於Unicode字元的說法中,不正確的一項是( C )。

A、Unicode字符集比ASCII字符集豐富 B、Unicode字元是16位無符號數

C、字元常量’a’以八進位制數表示為’\142’ D、字元常量’a’以八進位制數表示為’\14l’

16、下列關於int型別和long型別的說法中,正確的一個是( A )。

A、int型別可以自動轉換為long型別 B、long型別可以自動轉換為int型別

C、long型別佔的儲存空間比int型別的小 D、long型別和int型別資料能表示整數的範圍一樣

17、下列說法中錯誤的一項是( A )。

A、Java語言提供了檢測與避免死鎖的機制

B、在Java語言中,要避免死鎖,只能透過程式進行控制

C、釋放鎖的時候,應該按照死鎖順序的逆序進行

D、在編寫程式的時候,可以對所有共享資料設定一個統一的加鎖順序

18、設x為int型變數,則執行以下語句段後,x的值為( A )

x=10;x+=x;

A、20 B、10 C、40 D、30

19、下列資料表示十六進位制數的一個是( D )。

A、02l B、123 C、’23’ D、0xa34

20、下列描述中,正確的一項是( D )。

A、異常機制可以用於流程控制

B、finally程式碼段在發生異常時不一定必須執行

C、在catch程式碼段中可以使用return語句來返回到異常丟擲點

D、可以把catch到的異常物件再次丟擲,使上層try—catch結構繼續處理該異常事件

二、簡答題(每題5 分,共10分)

試比較break和continue語句的區別?

、答案:Break:強行退出迴圈,忽略迴圈體中的任何其他語句和迴圈的條件的條件測試。

Continue:語句用來終止本次迴圈。其功能是終止當前正在進行的本輪迴圈,即跳過後面剩餘的語句,轉而執行迴圈的第一條語句,計算和判斷迴圈條件,決定是否進入下一輪迴圈。

2、while和do……while的作用是什麼,並說明它們的差異。

答案:while和do……while是用於控制迴圈結構的。Do-while與while 語句的主要區別在於,先執行迴圈體中的語句再計算條件表示式,所以do-while語句的迴圈體至少執行一次。

三、程式結果題

1、給出下列程式的輸出結果:

public class ex23{

public static void main(String[ ]args){

float x=5;

float y=5;

double c=10;

c%=(++x)*y;

System。out。println(x);

System。out。println(c);

}

}

答案:6。0 10。0

2、下列程式碼的執行結果為:

public class ex23{

public static void main(String[ ]args){

int x=12;

int m=11;

int y=13;

int temp=x>y?x:y;

System。out。println(temp);

temp=temp>m?temp:m;

System。out。println(temp);

}

}

答案: 13 13

四、程式設計題

1、編寫列印下列圖形的程式:

* * * * * * *

* * * * *

* * *

*

答案:

public class ex23

{

public static void main(String[] args)

{

int i,j;

for(i=4;i>0;i——)

{

for(j=1;j<2*i;j++)

System。out。print(“*”);

System。out。println(“ ”);

}

}

}

2、編寫一程式,查詢某一字串是否包含有 “abc”。

[解答]:

public class ex23 {

public static void main(String[] args) {

String s = “sdsfdfaf”;

int a = s。indexOf(“abc”);

if (a != -1) {

System。out。print(“包含字串abc”);

} else {

System。out。print(“不包含字串abc”);

}

}

}

3、考慮一個2×3的陣列a。

(1) 為a寫一個宣告。試問,這樣的宣告使a有多少行,多少列,多少元素?

(2) 寫出a 的第1行的所有元素的名字。

(3) 寫一條語句,執行1列2的元素為零。

(4) 寫一個巢狀for結構,將a 的每個元素初始化為零。

(5) 寫一條語句,求第3列元素的和。

[解答]:

(1) int a=new int[2][3],陣列a有2行,3列,元素個數為6

(2) 第一行元素的名字為a[0][0],a[0][1],a[0][2]

(3) 執行1列2的元素為0,語句是a[0][1]=0;

(4)

for(int i=0;i<2;i++){

for(in j=0;j<3;j++){

a[i][j]=0;

}

}

(5)

int sum=0;

sum=a[0][2]+a[1][2];

Top