《Java面向对象编程》练习题 联系客服

发布时间 : 星期四 文章《Java面向对象编程》练习题更新完毕开始阅读581f0f8db9d528ea81c7795b

专题3 流程控制语句 一、填空题

1.在switch语句中的表达式的类型必须是( int型 )或者(与int相容的类型[byte,char,long,short] )。

2.break在循环语句中的作用是(跳出当前循环 )。 3.分支语句包括( if)和( switch)。

4.while循环语句的循环次数(0或者不限 ),do-while语句的循环次数( 至少一次 ),for语句的循环次数(0或者不限 )。

二、选择题

1.下面程序片段输出的是什么( C) int a=3, b=1;

if(a=b) Syste.out.println(“a=”+a);

A.a=1 B.a=3 C.编译错误,没有输出 D.正常运行,但没有输出 2.下面语句执行后,x的值为(C ) int a=4, b=5, x=3; if(++a==b) x=x*a;

A.3 B.12 C.15 D.20 3.请看下面的程序代码:

if(x<0) {Syste.out.println(“first”);} else if(x<20) {Syste.out.println(“second”);} else {Syste.out.println(“third”);}

当程序输出“second”时,x的范围是( B)

A.x<=0 B.x<20 && x>=0 C.x>0 D.x>=20 4.请看下面的程序代码: switch(n){

case 0: Syste.out.println(“first”); case 1:

case 2: Syste.out.println(“second”); break; default: Syste.out.println(“end”); }

当n为何值时,程序段将输出字符串”second”( D )

5

A. 0 B.1 C.2 D.以上都可以 5.下列语句执行后,j的值是(D ) int j=3, i=3; while(--i!=i/j) j=j+2;

A. 4 B.5 C.6 D.7 6.下列语句执行后,x的值是(D) int x=2 ;

do{x+=x ; }while(x<17);

A. 4 B.16 C.32 D.256 7.执行下列语句后,i、j的值是( B) int i=1, j=8; do{

if(i++>--j) continue; }while(i<4);

A. i=4, j=5 B.i=5,j=4 C.i=5,j=5 8.下列语句执行后,k的值是( B ) int j=4, i, k=10; for(i=2; i!=j; i++) k=k-i;

A. 4 B.5 C.6 D.7 9.下列语句执行后,c的值是(C ) char c=?\\0?;

for(c=?a?; c

if(c>=?e?) break;

}

A. ?e? B.?f? C.?g? D.?h? 10.若变量都已经正确说明,则以下程序段输出为( A ) a=10; b=50; c=30; if(a>b) a=b;b=c; c=a;

System.out.println(“a=”+a+” b=”+b+” c=”+c);

A.a=10 b=50 c=10 B.a=10 b=30 c=10 C.a=50 b=30 c=10 D.a=50 b=30 c=30 11.以下程序段输出是(D ) int x=1,y=0,a=0,b=0;

D.i=5,j=6 6

i=(--a==b++)? - -a : ++b; j=a++; k=b;

System.out.println(“i=”+i+” ,j=”+j+” ,k=”+k); 2 -1 2 A.i=2,j=1,k=3 B.i=1,j=1,k=2 C.i=4,j=2,k=4 D.i=2,j=-1,k=2 12.以下程序的输出是( B ) int x=1,y=0,a=0,b=0; switch(x){ case 1: switch(y){

case 0: a++;break; case 1: b++;break; } case 2: a++;break; case 3: a++;b++; }

System.out.println(“a=”+a+”,b=”+b); 2 0 A.a=1, b=0 B.a=2,b=0 C.a=1, b=1 D.a=2, b=2 13.以下程序段输出是( C ) int i=0,j=0,a=6;

if ((++i>0) || (++j>0 )) a++ :

System.out.println(“i=”+i+” ,j=”+j+” ,a=”+a);

A.i=0,j=0,a=6 B.i=1,j=1,a=7 C.i=1,j=0,a=7 D.i=0,j=1,a=7 14、下列程序运行的结果是 D 。 public class A{

public static void main(String args[]){ char c = 'd'; for (int i = 1; i <= 4; i++) { switch (i){ case 1: c = 'a'; System.out.print(c); break; case 2: c = 'b'; System.out.print(c); break;

7

}

}

}

case 3: c = 'c'; System.out.print(c); default: System.out.print(\ }

A.! B.dbc! C.abc! D.abc!!

专题4 数组 一、填空题

1.定义一个整型数组y,它有5个元素分别是1,2,3,4,5.用一个语句实现对数组y的声明、创建和赋值:(int y []={1,2,3,4,5} )。

2.设有整型数组的定义:“int x[][]={{12,34},{-5},{3,2,6}};”则x.length的值为(3 ) 3.求取二维数组a[][]的第i行元素个数的表达式是(a[i-1].length )。 4、一个一维数组有10个元素,则该数组可用的下标范围是 0-9 。 5、String S[]={“安徽”, “江苏”, “山东”};则S[1]的值是: 江苏 。

6、当声明一个数据组int arr[]=new int[5];时,这代表这个数组所保存的变量类型是 整形 ,数组元素下标的使用范围是 0-4 。

二.选择题

1.设有定义语句“int a[]={66,88,99};”,则以下对此语句的叙述错误的是( C) A.定义了一个名为a的一维数组 B.a数组有3个元素 C.a数组的元素的下标为1~3 D.数组中的每个元素是整数 2.设有定义“int[] a=new int[4];”则数组a的所有元素是(B ) A.a0、a1、a2、a3 B.a[0]、a[1]、a[2]、a[3] C.a[1]、a[2]、a[3]、a[4] D.a[0]、a[1]、a[2]、a[3]、a[4] 3.下面哪个选项正确地声明了一个字符串数组 (C )

A.char[] str B.char[][] str C.String[] str D.String[10] str

8