您現在的位置是:首頁 > 動作武俠首頁動作武俠
JAVA程式設計練習題一(附答案)
- 2021-06-07
所有異常都必須捕獲嗎
一、單項選擇題(每題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];