12. 表达式1%5的结果是( 1 )。
13. 设有“int a = 2; double d=2.0;”,下列每个表达式都是独立的,填写表达式的执行结果。
(1) a=46/9; ( 5 ) (2) a=46%9+4*4-2;( 15 )
(3) a=45+43%5*23*3%2;( 46 ) (4) a%=3/a+3; ( 2 ) (5) d=4+d*d+4; ( 12.0 )
(6) d+=1.5*3+(++a); ( 9.5 ) (7) d-=1.5*3+(++a); ( -5.5 )
14. 下列语句输出的结果是( 30+20=3020 )。
System.out.println(“30+20=”+30+20);
15. 执行以下三条语句后,a=( 3 ),b=( 1 ),c=( 3 )。
int a =1; int b =a++ ; int c=++a;
16. 以下语句输出( He said ”Java is fun.” )。
System.out.println(“He said\\”Java is fun.\\””); 17. 已知:int a =8,b=6; 则:表达式++a-b++的值为( 3 )。
18. 已知:boolean b1=true,b2; 则:表达式! b1 && b2 ||b2的值为( false )。 19. 已知:double x=8.5,y=5.8; 则:表达式x++>y--值为( true )。 20. 执行int x, a = 2, b = 3, c = 4; x = ++a + b++ + c++; 结果是(x=10,a=3,b=4,c=5)。 21. Java中的显式类型转换是(从低类型向高类型转换),从高类型向低类型转换是(隐式类型转
换 )。
22. 执行下列程序代码的输出结果是(i=11 j=11 a=10)。
int a = 10; int i, j; i = ++a; j = a--;
23. 执行完boolean x=false; boolean y=true; boolean z=(x&&y)&&(!y) ; int f=z==false?1:2;
这段代码后,z与f的值分别是( false )和( 1 )。
24. 对于在程序运行过程中一直不变的值,可以声明成( 常量 )确保它的值不会被修改,在声明
时使用( final ),还必须( 赋初值 )。
25. 在声明类中,方法之内的变量就叫做(局部 )变量。
26. 数据类型转换时,两种数据类型( 兼容 )并且( 目标 )类型大于( 源)类型,则可以
自动类型转换。
27. 字面量都有默认类型,整型字面量的默认类型为(int ),浮点型字面量的默认类型是( double)。 28. long类型字面量末尾字母是( L ),float类型字面量末尾字母是( F ),double的是( D )。
二、 选择题
1. 以下选项中,哪些属于合法的标识符?(多选)(AD )
A、Hello_World B. class C.123username D.username123 2. 下列哪些是合法的标识符(多选)( ABCD )
A、applet B、Applet C、$4 D、$$44 3. 下列哪个不是Java的关键字( D )
A、else B、public C、int D、radius 4. byte类型数据中最大的数据为( A )
A、127 B、128 C、255 D、256 5. short类型数据中最大数据为( C )
A、65535 B、65536 C、32767 D、32768
6. 表达式25/4的结果是( B )
A、6.25 B、6 C、6.0 D、以上都不对 7. 以下关于变量的说法错误的是?( C )
A、变量名必须是一个有效的标识符 B、变量在定义时可以没有初始值 C、变量一旦被定义,在程序中的任何位置都可以被访问
D、在程序中,可以将一个byte类型赋值给一个int类型的变量,不需要特殊声明 8. 下面的运算符中,用于执行除法运算的是哪个?( A )
A、/ B、\\ C、% D、*
9. double类型的数据占用( B )字节。
A、4 B、8 C、1 D、2 10. ”float f=15.6F; int i=(int)f; System.out.println(“f=”+f);”执行后的结果是( A )。
A、f=15.6 B、f=15 C、f=15.0 D、以上都不对 11. 下列语句正确的是( A )。
A、boolean b=true; B、double x=2.5f; C、char c=A D、float y=0.8d 12. Java程序中,计算表达式”-1-3*10/5-1”后的结果是( A )。
A、-8 B、-6 C、7 D、8
13. 下面( D )赋值语句不会出现编译警告或错误。
A、float f=1.3 B、char c=a C、byte b=257 D、int i=10 14. 下列标识符(名字)命名原则中,正确的是( C )。
A.类名的首字母小写 B.接口名的首字母小写
C.常量全部大写 D.变量名和方法名的首字母大写 15. 下面哪种注释方法能够支持javadoc命令?( C )
A.// B./*...*/ C./**...*/ D./**...**/ 16. 下面哪些标识符在Java语言中是合法的?( AB )
A.persons$ B.TwoUsers C.*point D.instanceof F.end-line 17. 下列( D )是合法标识符。
A.2end B.-hello C.=AB D.整型变量
18. 若定义有变量float f1,f2 = 8.0F,则下列说法正确的是( B )。
A.变量f1,f2均被初始化为8.0 B.变量f1没有被初始化,f2被初始化为8.0 C.变量f1,f2均未被初始化 D.变量f2没有被初始化,f1被初始化为8.0 19. 基本数据类型short的取值范围是( B )。
A.(-256)~ 255 B.(-32 768)~ 32 767 C.(-128)~ 127 D.0~65 535 20. 下列( B )是不能通过编译的语句。
A.double d = 545.0; B.char a1 = “c”; C.int i = 321; D.float f1 =45.0f; 21. 若定义有short s; byte b; char c; 则表达式s * b + c的类型为( C )。
A.char B.short C.int D.byte 22. 下列代表十六进制整数的是( C )。
A.012345 B.2008 C.0xfa08 D.fb05 23. 哪些是合法的标识符(多选)( AEFHIJ )。
A、Name B、2hello C、class D、a-public E、Sex
F、MIN_VALUE G、age# H、_id I、getName j、$main 24. 下列选项中为byte类型的取值范围的是( C )。
A、1~255 B、0~65535 C、-128~127 D、-32768~32767 25. 下列选项中,Java语句错误的是( C )。
A、double a=3.5 B、char a=322 C、flat a=1.0 D、double a=1 26. 下列选项中,合法的字符类型是( B )。
A、’ab’ B、’b’ C、”123” D、”\?” 27. String c=1+2+”6”+5;如果输出c,那么c的值是( C )。 A、1265 B、14 C、365 D、语法错误
28. 下列选项中,赋值语句不会出现编译错误的是( C )。
A、float a=2.0 B、char c=”a” C、byte b=25 D、boolean d=1 29. 下列选项中,赋值语句产生编译错误的是( AB )。
A、char a=’abc’ B、byte b=1234 C、long c=0x123 D、double d=1e-3f 30. 下列哪项不属于Java语言的基本数据类型?( B )
A.int B.String C.double D.boolean 31. 下列哪项不是int类型的字面量?( A )
A.\Φ B.077 C.OxABBC D.20 32. 下列哪项不是有效的标识符?( B )
A.userName B.2test C.$change D._password 33. 下列哪项是Java语言中所规定的注释样式?(多选)( ACD )
A.//单行注释 B.--单行注释 C. /* D. /**
*单行或多行注释 *文档注释 */ */ 34. 下列哪项不是Java语言的关键字?( B )
A.goto B.sizeof C.instanceof D.volatile35. 现有如下五个声明:
Linel: int a_really_really_really_long_variable_name=5 ; Line2: int _hi=6;
Line3: int big=Integer. getlnteger(\ Line4:int $dollars=8; line5: int %opercent=9; 哪行无法通过编译?( D )
A.Line1 B.Line3 C. Line4 D. Line5 36. 现有:
1. class Top {
2. static int x=l;
3. public Top (int y) { x*=3; } 4. }
5. class Middle extends Top { 6. public Middle() {x+=1; }
7. public static void main (String [] args) { 8. Middle m = new Middle(); 9. System. out .println (x); 1O. } 11. }
结果为( D )
A.1 B. 2 C.3 D.编译失败 37. 现有:
1. class Passer {
2. static final int X=5;
3. public static void main (String [] args) { 4. new Passer().go (x); 5. System. out .print (x); 6, }
7. void go (int x) {
8. System. out .print(x++); 9. } 10. }
结果是什么?( A )
A.55 B.56 C.65 D.66
38. 现有:
1. class Wrench {
2. public static void main(String [] args) {
3. Wrench w=new Wrench(); Wrench w2=new Wrench(); 4. w2=go (w, w2);
5. System.out.print (w2==w); 6. }
7. static Wrench go (Wrench wrl, Wrench wr2) { 8. Wrench wr3=wrl; wrl=wr2; wr2=wr3; 9. return wr3; 10. } 11. }
结果是什么?( B )
A. false B.true C.编译失败 D.运行的时候有异常抛出 39. 现有:
1. class Wrench2 { 2. int size;
3. public static void main(String [] args) { 4. Wrench2 w=new Wrench2(); 5. w.size=II;
6. Wrench2 w2=go(w, w.size);
7. System. out .print (w2. size); 8. }
9. static Wrench2 go(Wrench2 wr. int s) { 10. S=12;
11. return wr; 12. } 13. }
结果为( A )
A. 11 B. 12 c.编译失败。 D.运行时异常被抛出 40. 现有:
class Test2 f
public static void main (String [] args) { short a,b,C; a=l; b=2; C=a+b; a+=2: } }
以上代码中,哪一句是错误的?( B )
A.a=1: B.C=a+b; C. a+=2; D. short a,b,C; 41. 表达式:1-2/5+2*5的结果是哪项?( D )
A. 10.6 B. 9.8 C. 9 D.11