2017年9月计算机二级Java考试练习试题

进修社 人气:1.74W

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中,然后进行编译和执行。