JAVA语言考试复习_补全

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

选择题
1.下列符号不能作为JA V A标示符的是哪一个?C
A.条件
B.xyz
C.45six
D.ω
2.下列哪些不是JA V A的关键字。

请选择出所有的答案。

ABCD
A.superclass
B.open
C.close
D.integer
E.import
3.在JA V A语言中,‘\u0041’在内存中占用的字节数是多少?A
A.2
B.4
C.6
D.8
4.在JA V A语言中,整型常数123,占用的储存字节数是多少?D
A.1
B.2
C.4
D.8
5.在JA V A语言中,实型常数45.67,占用的储存字节数为D
A.1
B.2
C.4
D.8
6.下列数据哪些是常量?而且是什么类型的?哪些是变量?
null 常量空类型
false 常量boolean类型
name 变量
MATH.PI 常量double类型
ff 变量
0120 常量int类型
100L 常量Long类型
E 变量
200d 常量double类型
7.下列哪些赋值是合法的?请选择出所有的答案。

ABDE
A.long tese=012
B.float f=- 412
C.int other= (int)true
D.double d=0x12345678
E.short s=10
8.选择出所有不合法的表达式。

A.(ture &ture)
B.(4&5)
C.(int myInt=0>3)
D.float myFloat=40.0
E.boolean b=(boolean)99
9.写出下列表达式的值
(1)(3+4*5)/2 : 11
(2)3*4>=8 : true
(3)4==4&&5>2+2 : true
(4)!(2*3!=10): false
(5)8!=6||!(10>11+3): true
10.设有代码:Boolean b1 = new Boolean(true);
Boolean b2 = new Boolean(true)
下面哪些表达式是返回true的合法表达式?选择所有正确的答案。

如果是多选BCDEF,如果是单选就选B吧
A.b1==b2
B.b1.equals(b2)
C.b1&b2
D.b1|b2
E.b1&&b2
F.b1||b2
11..用while循环语句编程:求1~1000之间的偶数之和
int i = 1;
int sum = 0;
while(i<=1000) {
if(i%2 == 0)
sum += i;
}
System.out.println(sum);
12..编程:求1!+2!+3!+...+10!。

int sum = 0;
for(int i=1; i<=10; i++) {
int k = 0;
for(int j=1; j<=i; j++) {
k *= j;
}
sum += k;
}
System.out.println(sum);
13.编程:输出一数列的前n项。

该数列的1,2,3项为1,以后的各项是前3项的和。

即1,1,1,3,5,9,17,31,...。

分别用递归和递推方式实现。

递推:
public static int test13_ditui(int n) {
if(n < 4) {
return 1;
}
int i = 1, j = 1, k = 1, sum = 0;
for(int x = 4; x <= n; x++) {
sum = i + j + k;
i = j;
j = k;
k = sum;
}
return sum;
}
递归:
public static int test13_digui(int n) {
if(n < 4) {
return 1;
} else {
int res = test13_digui(n - 1) + test13_digui(n - 2) + test13_digui(n - 3);
return res;
}
}
public static void test(int n) {
for (int i=1; i<=n; i++) {
System.out.println(test13_digui(i));
}
for (int i=1; i<=n; i++) {
System.out.println(test13_ditui(i));
}
}
14.有一个数组,内放10个整数,要求找出最小的数和它的下标。

然后将它和数组中最前面的元素对换。

int minIdx = 0;
for (int i = 1; i<array.length; i++) {
if(array[i] < array[minIdx]) {
minIdx = i;
}
}
System.out.println("Min Index : "+ array[minIdx] + ", Min Index : "+ minIdx); int temp = array[0];
array[0] = array[minIdx];
array[minIdx] = temp;
例4.3 将Fibonacci数列的前15个数存入一维数组a中,并顺序输出数组的后5个数。

public class FibArray{
public static void main(String args[ ]){
int i,x = 1,y = 1,z,a[ ] = new int [15];
for (i =0;i < 15;i ++){
a[i] = x;
z = x + y;
x = y;
y = z;
}
for(i = 10;i < 15;i ++)
System.out.printf(“%2d :%4d\n”,i + 1,a[i]);
}
}
程序运行结果如下:11 :89
12 :144
13 :233
14 :377
15 :610
输出的数据是Fibonacci数列的第11至15个数。

下列程序输出的结果是什么?
class Ex4_8{
public static void main (String args[]){
int[] a={1,2,3},b=a;
a[0]=a[1]+1;a[1]=a[2]+1;a[2]=a[0]+1;
for(int i=0;i<3;i++)System.out.print(a[i]+””);
System.out.println( );
for(int i=0;i<3;i++)System.out.print(b[i]+””);
System.out.println( );
}
}。

相关文档
最新文档