Java复习题

1.已定义a为int类型的变量。以下选项中,合法的赋值语句是( B )。 A) a +1==2; B) a+=a*6; C) a=8.8f; D) int a=8;

A、不是赋值语句,中间是双等号,是比较;如果改成等号那么表达方式属于非法 C、不能把实数直接给整型变量,要强制转换(int)8.8f D、重复定义

2.Java程序有哪两类? 应用程序(Application)和小应用程序(Applet)

3.为了使包sos中的所有公共类在当前程序中可见,可以使用的语句是( A )。

A)import sos.*; B)package sos.*; C)sos import; D)sos package; 显然需要进行导入,所以使用import,C选项非法。 4.下列的变量定义中,错误的是( A)。

A) int 6_a; B) float a; C) int i=Integer.MAX_VALUE; D) static int i=100; 标识符的合法原则:字母(包括汉字),数字,_和$这四种组成,但是不能以数字开头。 5.下列的变量定义中,正确的是(D)。

A) boolean b1=”true”; B) float x=6.6; C) byte i=200; D) double y; A、不应该加双引号 B、6.6默认是double类型,不能直接在这里使用,应该用6.6f,C、200超出范围(-127~128)

6.以下字符常量中不合法的是(D)。

A) '|' B) '\\'' C) '\\n' D) \我\D是字符串。

7. Java源程序要运行必须经过( 编译 )和( 运行 )两个阶段。 8. Java编译器将Java语言编写的源程序编译成( 字节码 )文件。 9. 下列程序段执行后c的结果是(B )。 int a = 9, b = 11, c; c= a != b ? a+b : a-b;

A) –2 B) 20 C) 11 D) 9

10. 对于一个三位的正整数n=789,以下结果为8的是(D)。 A) n/10%2 B) (n-n)/100 C) n D) n0/10

11. 有一声明语句为boolean t;下面赋值语句中t的值为false的是(D )。 A)t=5>3; B)t=!false; C)t=(true|false); D)t=(2==3)?true:false;

12. 设 i, j, k, m为已赋值的 int 型变量,下列表达式的结果属于逻辑值的是( A)。 A) i==k & j+k >=m B) i+k C) m++ D) m=i+j

13. 若有定义int x = 13;则执行完语句x %= 8; 后,x的值是(C )。 A) 0 B) 1 C) 5 D) 8

14. 若有定义int a = 2;则执行完语句 a -= a * a; 后,a的值是( C)。 A) 0 B) 4 C) -2 D) –4 15. 下列程序段执行后 b3 的结果是(D)。 boolean b1=true, b2=true, b3; b3= !b1 ? b1 :!b2;

A) 0 B) 1 C) true D) false 16. 与以前的结构化程序设计不同,Java是一种完全(面向对象 ),而且平台(中立 )的语言, 而后者又使得用Java编写出来的程序具有( 可移植 )性。 17.面向对象程序设计的三个特性是( 继承 )、( 封装 )和(多态 )。 18. 执行下面程序段后,b, x, y的值分别是( D)。 int x=6,y=8; boolean b;

b=x>y&&++x==--y;

A)true , 6, 8 B)false , 7, 7 C)true, 7, 7 D)false, 6, 8 因为&&是简洁的与运算,前面如果已经是false,那么后面不再执行。 19. 下列语句序列执行后,m 的值是( C)。 int a=10, b=3, m=5;

if( a==b ) m+=a; else m=++a*m; A) 15 B) 50 C) 55 D) 5 20. 下列语句序列执行后,k 的值是(B )。 int i=4,j=5,k=9,m=5;

if(i>j||m

21. 下列语句序列执行后,k 的值是(C )。 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 21-1. 下列语句序列执行后,k 的值是(A )。 int i=10, j=18, k=30; switch( j - i )

{ case 8 : k++; ;break case 9 : k+=2; case 10: k+=3; default : k/=j; }

A) 31 B) 32 C) 2 D) 33

22. 阅读下面的程序段,回答问题。 if ( x < 5 )

System.out.print(\else {

if ( y < 5 )

System.out.print(\else

System.out.println(\} 问题:

1)若执行前 x=6, y=8,该程序段输出是什么?(three) 2)若执行前 x=1, y=8,该程序段输出是什么? (one) 23. 以下for循环的执行次数是(B)。

for(int x=0;(x==0)&(x>4);x++);

A)无限次 B)一次也不执行 C)执行4次 D)执行3次 24. 下列语句序列执行后,j 的值是( A )。 int j=1;

for( int i=5; i>0; i-=2 ) j*=i; A) 15 B) 1 C) 60 D) 0 25. 下列语句序列执行后,k的值是(D)。 int j=8, k=15;

for( int i=2; i!=j; i++ ) { j-=2; k++; } A) 18 B) 15 C) 16 D) 17 26. 下列语句序列执行后,k 的值是(B)。 int m=3, n=6, k=0;

while( (m++) < ( -- n) ) ++k; A) 0 B) 1 C) 2 D) 3 27. 下列语句序列执行后,j 的值是(C )。 int j=8, i=6;

while( --i >4 ) --j;

A) 5 B) 6 C) 7 D) 8 29. 若有循环: int x=5,y=20;

do { y-=x; x+=2; }while(x

A) 2次 B) 1次 C) 0次 D) 3次

30. 结构化程序设计的三种基本流程控制结构是:___顺序__、__选择__、__循环__。 31. 下面程序的功能是求2 到100 之间的素数,请将程序补充完整。 (0 continue Label1 ) public class Class1

{ public static void main( String args[] ) { Label1: for(int i=2;i<100;i++) { for(int j=2;j

if( i%j==_____) _________; }

System.out.print(i+\ } } }

33. 下列方法定义中,不正确的是(D)。

A) float x( int a,int b ) { return (a-b); } B) int x( int a,int b) { return a-b; }

C) int x( int a,int b ); { return a*b; } D) int x(int a, b) { return 1.2*(a+b); } 34. 以下方法fun的功能是求两参数之积。(return a*b)

联系客服:779662525#qq.com(#替换为@) 苏ICP备20003344号-4