2017年9月計算機二級Java考試練習試題

學識都 人氣:1.81W

Java可以編寫桌面應用程序、Web應用程序、分佈式系統和嵌入式系統應用程序等。計算機等級考試即將到來,下面是小編整理的關於計算機二級Java考試練習試題,希望大家認真複習!

2017年9月計算機二級Java考試練習試題

單選題

1). 樹最適合用來體現____。

A.有序數組元素

B.無序數組元素

C.元素之間具有分支層次關係的數據

D.元素之間無偉德國際的數據

準確答案:C

2). 在Java中,由Java編譯器主動導入,而無需在程序中用import導入的包是____。

A.java.applet

B.java.awt

C.java.util

D.java.lang

準確答案:D

3). 在讀字符文件Employee.dat時,使用該文件作爲參數的類是____。

A.BufferedReader

B.DataInputStream

C.DataOutputStream

D.FileInputStream

準確答案:D

4). switch 語句不能用於下列哪種數據類型?

A.double

B.byte

C.short

D.char

準確答案:A

5). 下面偉德國際applet生命週期的說法準確的是

A.applet生命週期是從瀏覽器解析HTML文件最先的

B.瀏覽器加載結束時,終止applet的運行

C.applet生命週期包羅:applet的創建、運行、等待與消亡四個狀況

D.以上說法均禁絕確

準確答案:D

6). main方法是Java application程序執行的入口點,偉德國際main方法的方法頭,以下哪項是合法的?

A.public static void main()

B.public static void main(String args[])

C.public static int main(String [] arg)

D.public void main(String arg[])

準確答案:B

7). 下列代碼的執行結果是:public class Test2{public static void main(String args[]){System.out.println(5/2);}}

A.2.5

B.2.0

C.2.50

D.2

準確答案:D

8). 下列偉德國際棧的敘述中準確的是

A.在棧中只能插入數據

B.在棧中只能刪除數據

C.棧是先進先出的線性表

D.棧是先進後出的線性表

準確答案:D

9). 下列屬於正則表達式的是

A.一個數組

B.一組二進制數據

C.一個字符串

D.一個公式

準確答案:C

10). 若a的`值爲3時,下列程序段被執行後,c的值是int c=1;if(a>0)if(a>3)c=2;else c=3;else c=4;

A.1

B.2

C.3

D.4

準確答案:C

11). 若要把變量聲名爲暫時性變量,應使用如下哪種修飾符?

A.protected

B.provate

C.transient

D.volatile

準確答案:C

12). 下列命令中,哪個命令是Java的編譯命令?

A.javac

B.java

C.javadoc

D.appletviewer

準確答案:A

綜合應用(1小題,計30分)

注意:下面出現的“考生文件夾”均爲%USER%

在考生文件夾中存有文件名爲Java_3.java的文件,該程序是不完整的,請

在註釋行“//**********Found**********”下一行語句的下劃線地方填入

正確內容, 然後刪除下劃線,請勿刪除註釋行或改動其他已有語句內容。

存盤時文件必須存放在考生文件夾下,不得改變原有文件的文件名。

本題的要求是:

閱讀Java_3.java程序,該程序利用BitSet算法,篩選得到1至1023之間

的素數。完成程序並運行所得結果爲:

給定源程序:

//Java_3.java: 用BitSet完成Eratosthenes篩網算法找1至1023之間的素數.

import java.awt.*;

import java.awt.event.*;

import java.util.*;

import javax.swing.*;

public class Java_3 extends JFrame {

public Java_3(){

super( "BitSets" );

final BitSet sieve = new BitSet( 1024 );

Container c = getContentPane();

final JLabel status = new JLabel();

c.add( status, BorderLayout.SOUTH );

JPanel inputPanel = new JPanel();

inputPanel.add( new JLabel(

103f

"從1 至 1023" +

"輸入值:" ) );

final JTextField input = new JTextField( 10 );

input.addActionListener(

new ActionListener() {

public void actionPerformed( ActionEvent e ){

int val = Integer.parseInt( input.getText() );

if ( sieve.get( val ) )

status.setText( val + " 是一個素數 " );

else

status.setText( val +

" 不是一個素數 " );

}

}

);

inputPanel.add( input );

c.add( inputPanel, BorderLayout.NORTH );

JTextArea primes = new JTextArea();

ScrollPane p = new ScrollPane();

//*********Found********

p.add( primes);

c.add( p, BorderLayout.CENTER );

//從1 至 1023設置所有位

int size = sieve.size();

for ( int i = 1; i < size; i++ )

sieve.set( i );

//執行Eratosthenes篩網算法

int finalBit = ( int ) Math.sqrt( sieve.size() );

for ( int i = 2; i < finalBit; i++ )

if ( sieve.get( i ) )

for ( int j = 2 * i; j < size; j += i )

sieve.clear( j );

int counter = 0;

for ( int i = 1; i < size; i++ )

if ( sieve.get( i ) ) {

primes.append( String.valueOf( i ) );

primes.append( ++counter % 7 == 0 ? "n" : "t" );

}

setSize( 300, 250 );

show();

}

public static void main( String args[] ){

Java_3 app = new Java_3();

//*********Found********

app.addWindowListene(

new WindowAdapter() {

public void windowClosing( WindowEvent e ){

System.exit( 0 );

}

}

);

}

}

解題思路:

Java程序修改如下:

第1處:文本區域添加到窗口,需填入 primes

第2處:註冊監控器,需填入 addWindowListener

參考源程序:c:wexam28990001hlpsys參考答案Java_3.java

請把該程序複製到c:wexam28990001中,然後進行編譯和執行。