javabase 下载本文

内测/月考

解答过程:标识符必须以字母下划线或者美元$开头,由字母、数字、下划线或美元符($)组成的字符串

46. public static void main(String args[]) { [同31]

double x,y; x = 2; y = x + 3/2;

System.out.println(y); }

编译运行以上Java语言中,输出结果应该为(选一项) A、3.5 B、3 C、2.0 D、3.0

解答过程:3/2 int/int精度丢失 结果为1

y的数据类型为double

47. 编译并运行下面的Java代码段:[68,69,87]

char c = 'a'; switch (c) { case 'a':

System.out.println(\default:

System.out.println(\}输出结果是(选一项)

A、代码无法编译,因为switch语句没有一个合法的表达式 B、adefault C、a D、default

解答过程:从表达式值等于某个case语句后的值开始,它下方的所有语句都会一直运行,直到遇到一个break为止。由于该程序中case语句后都没有break,程序会依次输出

48. 表示关系X<=Y<=Z的JAVA语言表达式为(选一项)

A、(X<=Y)&&(Y<=Z) B、(X<=Y)AND(Y<=Z) C、(X<=Y<=Z) D、(X<=Y)&(Y<=Z)

解答过程:在Java语言中有三种逻辑运算符,它们是NOT(非,以符号”!”表示)、AND(与,以符号”&&”表示)、OR(或,以符号”||”表示)。

第 13 页 共 45 页

内测/月考

49. 定如下java代码, 编译运行之后, 将会输出(选一项)

public class Test {

public static void main(String args[]){ int a = 5;

System.out.println((a % 2 ==1)?(a+1)/2:a/2); }} A、1 B、2 C、2.5 D、3

解答过程:三目运算符,对于条件表达式b?x:y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。

50. 定义了一个方法如下

public static void main( String[] args ){

int[] arr = {5,1,3,6,4,5,6,7,8,9}; changeValue( arr ); System.out.println( arr[2] ); }

public static void changeValue(int[] arr){ arr[2] = 5; }

程序运行后输出结果为(选一项) A、5 B、1 C、2 D、3

解答过程:数组作为参数传递,是引用传递,引用传递是改变原来属性的值的

51. 方法pr声明为

public static void pr ( float[] scores, int n ){ }

声明了三个变量 int[] ary = new[10]; int m=5; int n = 10; 那么下面正确调用pr方法的是(选一项) A、pr (ary); B、pr (ary,m); C、n = pr (ary,m); D、都不正确

解答过程:pr()方法有两个参数,一个为float数组,一个为整型。参考题5,发现int可以自动向float转换。

52. 分析如下Java代码片段,输出结果为(选一项)[83,118]

第 14 页 共 45 页

内测/月考

int price = 10, number = 0, monney = 0; for (int i = 0;i<2;i++){ number++; --price;

monney += number * price; }

System.out.println(monney); A、25 B、28 C、31 D、20

解答过程:先了解a++和++a的区别 第一种情况: a=3; b=a++; 运行后

第二种情况: a=3; b=++a; 运行后 b=4,a=4

b=3,a=4

不难看出无论是a++还是++a a的值都已经增大了1,只是在赋值给其他变量的过程中会有一些差别 money += 1*9 money+=2*8

53. 分析如下Java语言代码段,x、y均为int数据类型,下列说法正确的是(选一项)

if(x>y){ x+=y; ++y; } else{ y+=x; x++; }

System.out.println( x + \A、若x=2, y=0,则输出为1,1 B、若x=0, y=1,则输出为1,0 C、若x=1, y=1,则输出为2,2 D、若x=2, y=3,则输出为3,4

解答过程:A项若x=2,y=0,则输出为2,1

54. 分析如下JAVA语言代码片断

int i=6,j=4;

System.out.println(i%j); 输出结果为(选一项)

B项若x=0,y=1,则输出为1,1 D项若x=2,y=3,则输出为3,5

第 15 页 共 45 页

内测/月考

A、0 B、2 C、1.5 D、1

解答过程:%表示取余 方便理解6/4=1……2 6%4=2

55. 分析下面的Java程序:

public static void main(String args[]) { int num = 0; while(num <= 2){ num++;

System.out.print(num); }

}输出结果是(选一项) A、13 B、12 C、023 D、123

解答过程:while循环判断条件num<=2,所以此循环会循环3次,分别输出1 ,2,3

56. 分析下面的程序:(题目有些问题)

void fun(int a ,int b,int c) { a=456; b=567; c=678; }

public static void main(String args[]){ int x=10,y=20,z=30; fun(x,y,z);

System.out.println(z,y,x); }

输出结果是(选一项) A、30,20,10 B、10,20,30 C、456,567,678 D、678,567,456

解答过程:x,y,z作为值来传递,值传递是不改变原来属性的值的

57. 给定Java代码,如下:

public byte count(byte b1,byte b2){ return______; }

要使这段代码能够编译成功,横线处可以填入(选一项)

第 16 页 共 45 页