全国计算机等级考试Java试题及答案(2)
1. 分析下面源程序的结构和运行结果
Class CircleArea {
final static double PI =3.14159;
public static void main (String arge[] ){
double r1=8.0, r2=5.0;
system.out.println(“半径为”+r1+ “的圆面积=”+area (r1));
system.out.println(“半径为”+r2+”的圆面积=”+area(r2));
}
Static double area(double r){
Return (PI *r*r);
}
}
解:源程序创建了一个自定义类CircleArea,该类包含了一个类成员变量PI,一个类方法area 将返回圆面积。在主方法main中定义了两个实例变量r1与r2,并调用area方法输入圆面积。程序结果如图所示,
——————————————————运行——————————————————
半径为8.0的圆面积=201.06176
半径为5.0的圆面积=78.53973
2.根据下面的代码:
If (x>0) {system.out.println(“第一”);}
else if (x>—3) {system.out.println(“第二”);}
else {system.out.println(“第三”);}
判断x取值在什么范围内时将打印字符串“第二”?(B)
A x>0 B x>—3 C x<=—3 D x<=0 & x>—3
解:x>—3时将打印字符串“第二”。
3.关于下面程序段正确的说法是
Char mychar =’c’;
Switch (mychar) {
Default;
Case ‘a’: system.out.println(“a”); break;
Case ‘b’: system.out.println(“b”); break;
}
A 程序出错,dafault位置不对
B 程序出错,case表达式必须是int类型,不能使用char类型
C 程序正确,屏幕显示输出字符a
D 程序正确,屏幕无显示输出
解:D
4.以下程序的输出结果是什么?
Public class test1 {
Public static void main (string args[]){
Int y,x=1,total=0;
While (x<=10){
Y=x*x;
System.out.println(y);
Total+=y;
++x;
}
System.out.println(“total is ”+total);
}
}
解:程序输出结果如下所示:
1
4
9
16
25
36
49
64
81
100
Total is 385
5.以下程序的运行结果是什么?
Public class test2{
Public static void main (string args[]){
Int count=1;
While (count<=10) {
System.out.println(count%2 ==1?” * * * * ”:”++++++++”);
++count;
}
}
}
解:程序如下图所示
****
++++++++
****
++++++++
****
++++++++
****
++++++++
****
++++++++
6.完成下面的程序,利用break 语句和带标号的break 语句分别退出一重循环和二重循环。
For (i=0;i<10; i++) {
Int j=i*10
While (j<100){
If (j==10)
Break;
J=j+5;
}
}
解:完整的程序如下所示:
Public class 题 3_14 {
Public static void main (string args[] ){
Int I;
Bh1:
For (i=0; i<10; i++ ) {
Int j=i*10;
While (j<100 ){
If (j==10)
Break;
J=j+5;
Continue bh1;
}
}
}
}