java模拟试卷二及参考答案 下载本文

一. 单项选择题(30分)

11.下列语句序列执行后,k 的值是__________。

int m=3, n=6, k=0;

while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3

12.设 i、j 为int型变量名,a 为int型数组名,以下选项中,正确的赋值语句是__________。

A) i = i + 2 B) a[0] = 7; C) i++ - --j; D) a(0) = 66; 13.Java类之间的继承关系是__________。

A) 多重的 B) 单重的 C) 线程的 D) 不能继承

14.设有定义 int i = 6 ;,则执行以下语句后,i 的值为__________。

i += i - 1; A) 10 B) 121 C) 11 D) 100

15.下列选项中,用于在定义子类时声明父类名的关键字是__________。 A)interface B) package C) extends D) class

16.若已定义 byte[ ] x= {11,22,33,-66} ;且0≤k≤3,则对x数组元素错误的引用是__________。 A) x[5-3] B) x[k] C) x[k+5] D) x[0]

17.下列语句序列执行后,ch1 的值是__________。

char ch1='A',ch2='W'; if(ch1 + 2 < ch2 ) ++ch1; A) 'A' B) 'B' C) 'C' D) B

18.下列语句序列执行后,i 的值是__________。

int i=8, j=16;

if( i-1 > j ) i--; else j--; A) 15 B) 16 C) 7 D) 8

19.下列语句序列执行后,k 的值是__________。

int i=10, j=18, k=30; switch( j - i ) {

case 8 : k++; case 9 : k+=2; case 10: k+=3; default : k/=j; } A) 31 B) 32 C) 2 D) 33 20.下面语句执行后,i 的值是__________。

for( int i=0, j=1; j < 5; j+=3 ) i=i+j; A) 4 B) 5 C) 6 D) 7

21.设有定义 float x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为true的是__________。 A) x > y || x > z B) x != y C) z > ( y + x ) D) x < y & ! ( x < z )

22.下列语句序列执行后,i的值是__________。

int i=16;

do { i/=2; } while( i > 3 ); A) 16 B) 8 C) 4 D) 2

23.以下由 for 语句构成的循环执行的次数是__________。 for ( int i = 0; true ; i++) ;

A) 有语法错,不能执行 B) 无限次 C) 执行1次 D) 一次也不执行

24.定义类头时能使用的修饰符是__________。 A) private B) static C) abstract D) protected

25.设int 型变量 a、b,float 型变量 x、y,char 型变量 ch 均已正确定义并赋值,

正确的switch语句是__________。 A) switch (x + y) B) switch ( ch + 1 )

{ ...... } { ...... } C) switch ch D) switch ( a + b );

{ ...... } { ...... }

26. 下列最终属性 i 的定义中,正确的是__________。 A) static final int i=100; B) final int i=1.2; C) final i='w'; D) final char i;

27. 下列类定义中,不正确的是__________。 A) class X { .... }

B) class X extends Y { .... }

C) static class X implements Y1,Y2 { .... } D) public class X extends Applet { .... }

28. 设 X、 Y为已定义的类名,下列声明X类的对象x1的语句中正确的是__________。 A) static X x1; B) public X x1=new X(int 123); C) Y x1; D) X x1=X( );

29. 设 i、j、k 为类 X 中定义的 int 型变量名,下列类 x 的构造方法中不正确的是__________。 A) X( int m){ ... } B) void X( int m){ ... } C) X( int m, int n){ ... } D) X( int h,int m,int n){ ... } 30. 下列方法定义中,正确的是__________。 A) int x( ){ char ch='a'; return (int)ch; } B) void x( ){ ...return true; } C) int x( ){ ...return true; } D) int x( int a, b){ return a+b; }

31. 用于定义类成员的访问控制权的一组关键字是__________。 A) class, float, double, public B) float, boolean, int, long C) char, extends, float, double D) public, private, protected

32. 不能构成循环的语句是__________。

A) for 语句 B) while 语句 C) switch 语句 D) do__while 语句

33. 下列程序段执行后 b3 的结果是__________。 boolean b1=true, b2, b3; b3= b1 ? b1 : b2; A) 0 B) 1 C) true D) false

34.为了区分重载多态中同名的不同方法,要求__________。 A) 采用不同的形式参数列表 B) 返回值类型不同 C) 调用时用类名或对象名做前缀 D) 参数名不同

35. 设有定义 int i=123; long j=456; 下面赋值不正确的语句是__________。 A) j=i; B) j=(long)i; C) i=(int)j; D) i=j;

36. 现有一整型数组a[4],它的所有数组元素是__________。 A) a0, a1, a2, a3 B) a[0], a[1], a[2], a[3] C) a[1], a[2], a[2], a[4] D) a[0], a[1], a[2], a[3], a[4]

37. 定义 Java applet程序时,必须有的 import语句是__________。 A) import java.applet.Applet; B) import java.io.*; C) import java.awt.event; D) import java.lang.*;

38.现有两个类A、B,以下描述中表示B继承自A的是__________。 A) class A extends B B) class B implements A C) class A implements B D) class B extends A

39.在一个应用程序中有如下定义:int a[]={1,2,3,4,5,6,7,8,9,10};,为了打印输出数组a的最后一个元素,下面正确的代码是__________。 A) System.out.println(a[10]); B) System.out.println(a[9]);

C) System.out.println(a[a.length]); D) System.out.println(a(8));

40. 既能作为类的修饰符, 也能作为类成员的修饰符的是__________。 A) public B) extends C) float D) static

二、填空题(每空2分,共20分) 1. 构造方法______有返回值。

2. Java语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为float和 __________两种具体类型。 3. 创建类对象的运算符是___________。

4. 当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_____________ 。

5. 在Java语言中,所有的数组都有一个lenght属性,这个属性存储了该数组的__________。

6. 定义类就是定义一种抽象的____________,它是所有具有一定共性的对象的抽象描述。

7. 在Java语言中,使用继承、______等技术,实现软件重用。 8. Java的复合数据类型有 : 类、数组和_______等。 9. 以下方法 m 的功能是求两参数之积的整数部分。 int m ( float x, float y ) { __________________; } 10.若a,b为int型变量且已分别赋值为2,4。表达式!(++a!=b--)的值是_________ 。

三、阅读程序,写出运行结果(每小题5分,共20分) [程序1]//程序段 int x=6, y=8; if ( x < 5 )

System.out.print(\ else

{ if ( y < 5 )

System.out.print(\ else

System.out.println(\ }

[程序2]//Test.java

public class Test extends TT {

public static void main(String args[]) {

Test t = new Test(\

}

public Test(String s) {

super(s);

System.out.println(\ }

public Test() {

this(\

} }

class TT {

public TT() {

System.out.println(\ }

public TT(String s) {

this();

System.out.println(\ } }

[程序3]//Example.java public class Example{

String str=new String(\ char[]ch={'a','b','c'};

public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch);

System.out.print(ex.str+\ Sytem.out.print(ex.ch); }

public void change(String str,char ch[]){ str=\ ch[0]='g'; } }

[程序4]

import java.util.*; public class A{

public int hashCode(){return 1;} public static void main(String args[]) { HashSet set=new HashSet(); set.add(new A()); set.add(new A()); set.add(new A());

System.out.println(set.size()); } }

四、编程题(共20分)

1、实现下图效果,通过选择单选按钮中的选项来设置标签组件的内容,由标签组件显示我们的选择。

2、编写一个使用String类中的indexOf()方法确定一字符串在另一字符串中出现次数的应用程序。例如字符串“this”在字符串“this is my first program. this?”中出现了2次。

3、使用循环嵌套,编写一个输出如下图形的程序: * * * * * * * * * * * * * * *