1、若以下变量均是整型,且 num=sum=7 ;则执行表达式: sum=num++ , sum++ , ++num 后 sum 的值为( B )。
A: 7 B: 8
C: 9 D: 10
解析:(1)num = sum = 7 此时这两个变量都是7
(2)sum = num++,sum++,++num;这个东西他不是逗号表达式。此时sum = num++;此时sum=7,程序继续往后走执行 num++,num=8,但是此时sum还是7,继续走,sum++,此时sum才是8.再++num.最后num=9。
(3)如果写成sum = (num++,sum++,++num),sum才是9;这才是逗号表达式。
2、以下不能正确定义二维数组的选项是( D )
A. int a[2][2]={{1},{2}}; B. int a[][2]={1,2,3,4};
C. int a[2][2]={{1}, 2,3}; D. int a[2][] ={{1,2},{ 3,4}};
解析:C语言定义2维数组,不能省略列。
3、下面有关 java final 的基本规则,描述错误的是 ( B )
A:final修饰的类不能被继承
B:final修饰的成员变量只允许赋值一次,且只能在类方法赋值
C:final修饰的局部变量即为常量,只能赋值一次
D:final修饰的方法不允许被子类覆盖
解析:final可以修饰类,代表不能被继承,修饰方法,代表该方法不能被重写,修饰变量,该变量不能修改。B选项为什么错?类方法是静态方法,成员变量如果是常量,必须是定义的时候同时对其进行初始化。
4、选项中哪一行代码可以替换 //add code here 而不产生编译错误 ( A )
public abstract class MyClass {
public int constInt = 5;
//add code here
public void method() {
}
}
A: public abstract void method(int a)
B: consInt=constInt+5;
C: public int method();
D: public abstract void anotherMethod(){}
解析:A:抽象方法的定义,此时和public void method() {} 构成重载,不会报错
B:这个表达式不能出现在成员变量的定义的地方
C:不是抽象方法,会报错
D:抽象方法后不能有具体的实现
5、第三行将输出什么? ( B )
public class SwitchTest{//1
public static void main(String[] args) {//2
System.out.println("value="+switchit(4));//3
}//4
public static int switchit(int x) {
int j=1;
switch (x) {
case 1:j++;
case 2:j++;
case 3:j++;
case 4:j++;
case 5:j++;
default:j++;
}
return j+x;
}
}
A: value=6; B: value=8;
C: value=3 D: value=5
解析:没有break,程序会继续执行,直到函数结束。
二.代码题1、一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在 第10次落地时,共经过多少米? 第10次反弹多高?
解析:
public class Day06 {
public static void main(String[] args) {
double s = 100;//总距离
double h = 100;//第一次高度
int n = 10;
double d = 0;//每次落地之间间隔的距离
for(int i = 1;i <= n;i++) {
s += d;
h/= 2.0;
d = h*2;
}
System.out.println("共走过:" + s + "米");
System.out.println("第" + n + "次反弹的高度是:" + h);
}
}
2、有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都 不死,问第n个月的兔子对数为多少?
解析:斐波那契数列问题。
public class Day07 {
private static int fun(int n){
if(n==1 || n==2)
return 1;
else
return fun(n-1)+fun(n-2);
}
public static void main(String[] args) {
System.out.println(fun(10));
}
}


