第3章(2)switch&循环语句练习题 一、填空题
1、设有数组定义:int MyIntArray[ ] = { 10 , 20 , 30 , 40 , 50 , 60 , 70}; 则执行以下几个语句后的输出结果是120。 int s = 0 ;
for (int i = 0 ; i < MyIntArray.length ; i + + ) if ( i % 2 = = 1 ) s += MyIntArray[i] ; System.out.println(s);
2、下面程序段的执行结果是(6 5 4 3 2) int a[] = { 2, 3, 4, 5, 6 };
for (int i = a.length - 1; i >= 0; i--) System.out.print(a[i] + \
3、以“java Sub 3”运行以下程序的结果是:3th season___。 public class Sub{
public static void main(String[] args) { int i=Integer.parseInt(args[0]); swich(i) {
case 1: System.out.println(“First season”); break; case 2: System.out.println(“Second season”); break; case 3: System.out.println(“3th season”); break; case4: System.out.println(“Last season”); break; }
} }
4、switch(X)中,X可以接受的类型有_char ____,__byte_____,short,int。 5、以下程序段的输出结果为__Value istwo.Value is three.______。 int j=2; switch ( j ) {
case 2: System.out.print(“Value is two.”);
case 2+1 : System.out.println(“Value is three.”); break; default: System.out.println(“value is “+j); break; }
6、如果x=2;则下面程序执行后的结果是__34____? switch (x) {
case 1: System.out.println(1); case 2:
case 3: System.out.print (3); case 4: System.out.println(4); }
7、下面代码执行结束后l和j的值分别是_l=5,j=6_____? public static void main(String[] args) {
int j=10; int l=1; do{
if(l++>--j) continue; }
while(l<5); }
8、下面程序的运行结果为(20) class test{
public static void main(String args[]){ int sum=0;
for(int i=0;i<10;i++){
if(i%2==0) sum+=i;
else continue;
}
System.out.println(sum); } }
二、单选
1、应用程序的main方法中有以下语句,则输出的结果是 ()。 int b[][]={{1}, {2,2}, {2,2,2}}; int sum=0;
for(int i=0;i for(int j=0;j sum+=b[i][j]; } } System.out.println(\A) 32 B)11 C) 2 D) 3 2、应用程序的main方法中有以下语句,则执行后输出的结果是 ()。 int[] x={125,21,5,168,98}; int max=x[0]; for(int i=1;i if(x[i]> max) max =x[i]; } System.out.println(max); A) 125 B) 5 C) 98 D) 168 第4章(1)类和对象练习题 一、填空 1、面向对象程序的主要特征:继承,______封装________,____多态__________。 2、__构造方法___是类中的一种特殊方法,用来定义对象的初始状态。 3、构造方法在__创建对象__时被调用。 4、系统类Math的random()方法可用来产生0-1.0之间的实数,则产生一个50-100之间的整数的程序语句是_(int)Math.random()*50+50______。 5、下面代码执行结束之后,打印出来的结果是__4____? public class Happy { public static void main(String args[]) { int i=4; int j=2; methodA(i,j); System.out.println(i); } static public void methodA(int i,int j) { i<<=j; } } 6、在java语言中,有一个类是所有类和接口的父类,这个类的名称是_java.lang.Object(Object)____。 7、构造方法在_创建对象___时被调用。 8、java运行系统通过_垃圾回收机制___周期性的释放无用对象所占用的内存,以完成对象的消除。 9、阅读以下程序,输出结果为__1.23__。 class Q1{ public static void main(String args[ ]){ double d=1.23; Dec dec=new Dec( ); dec.decrement(d); System.out.println(d); } } class Dec{ public void decrement(double decMe){ decMe = decMe -0.1; } } 10、阅读程序 public class Test{ int x=12; public void method1(int x){ x+=x; System.out.println(x); } } 如果有如下的代码段: Test t=new Test(); t.method1(5); 程序执行到这个地方,代码输出结果是___10__? 11、定义在类中的变量为__成员变量__,它不需要进行显式的初始化,定义在方法中的变量为___局部变量_,它需要进行显式的初始化。 12、面向对象的模型中,最基本的概念是_类__和_对象__。 二、多选题 1、下面选项中,_________是合法的构造方法的重载? public class ConstOver { public ConstOver (int x, int y, int z) { } } A. ConstOver ( ) { } B. Protected int ConstOver ( ) { } C. Private ConstOver (int z, int y, byte x) { } D. Public Object ConstOver (int x, int y, int z) { } E. Public void ConstOver (byte x, bytey, byte z) { } 1 2、下面说法中______是对方法setVar()重载的方法。 public class MethodOver { public void setVar (int a, int b, float c) { } } A. Private void setVar (int a, float c, int b) { } B. Protected void setVar (int a, int b, float c) { } C. Public int setVar (int a, float c, int b) {return a;} D. Public int setVar (int a, int b, float c) {return a;} E. Protected float setVar (int a, int b, float c) {return c;}
相关推荐: