1、计算机二级 JAVA-149及答案解析(总分:42.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:1.00)1.下面的程序的功能是将数组 array下标为奇数的元素相乘(数组的位置是从 0开始的),并将乘积存放到变量 total中。请在程序的每条横线处填入适当的语句,使程序的功能完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 public class JiShuJi public static void main(String args ) int array =1,2,3,5,7,9; long total= _; for(int
2、 i=1;i=_ i+) _ i+; System.out.println(total); (分数:1.00)_二、2简单应用题(总题数:1,分数:40.00)2.注意:下面出现的“考生文件夹”均为%USER%。 在考生文件夹下存有文件名为 Java_2.java的文件,本题功能是完成点定义,并输出点坐标。请完善Java_2.java文件,并进行调试,使程序结果如下: x=5 y=5 点的坐标是(5,5) x=8 y=9 点的坐标是(8,9) 由于 Java_2.java文件不完整,请在注释行“/*Found*”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或其他已有语句内
3、容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。 给定源程序: public class Java_2 public int x,y; public Java_2() public Java_2 (int x,int y) this.x=x; this.y=y; /*Found* public Java_2(_p) x=p.x;y=p.y; public Java_2 getLocation() Java_2 p=new Java_2 (x,y); return p; public int getX() return X; public int getY() return y
4、; public void move (int x,int y) this.x=x; this.y=y; public void setLocation (Java_2 p) x=p.x; y=p.y; public String toString() return(“(“+Integer.toString (x)+“,“+Integer.toString(y)+“)“); public void translate (int x,int y) this.x+=x; this.y+=y; public static void main (String args) /*Found* Java_2
5、 p=new_(5,5)j System.out .printIn(“x=“+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_(); p.translate (3,4); System.out.printIn(“x= “+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_(); (分数:40.00)_三、3综合应用题(总题数:1,分数:1.00)3.下面是一个 Applet程序,其功能是接收用户输入的两个整数,比较它们的大小,并在用户按下“比较大小”按钮后,将 Applet 中显示
6、的“请先输入两个待比较的整数”,改为“两个整数中最大值是:x”,x是两个数中的最大值。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: (分数:1.00)_计算机二级 JAVA-149答案解析(总分:42.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:1.00)1.下面的程序的功能是将数组 array下标为奇数的元素相乘(数组的位置是从 0开始的),并将乘积存放到变量 total中。请在程序的每条横线处填入适当的语句,使程序的功能完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线
7、处填入适当的语句。 public class JiShuJi public static void main(String args ) int array =1,2,3,5,7,9; long total= _; for(int i=1;i=_ i+) _ i+; System.out.println(total); (分数:1.00)_正确答案:()解析:1 arraylength-1; total*=arrayi; 解析 本题主要考查 for循环语句和数组的知识。解答本题的关键是熟练掌握 for循环语句和数组的知识。一个for循环语句一般应包含 4部分内容:(1)初始化部分:用来设置循环
8、控制的一些初始条件,如设置计数器等。(2)循环体部分:这是反复执行的一段代码,可以是单一的一条语句,也可以是复合语句(代码块)。(3)迭代部分:用来修改循环控制条件。常常在本次循环结束,下一次循环开始前执行。例如,使计数器递增或递减。(4)判断部分:也称终止部分。是一个关系表达式或布尔逻辑表达式,其值用来判断是否满足循环终止条件。每执行一次循环都要对该表达式求值。解答循环语句题要抓住这四个部分。二、2简单应用题(总题数:1,分数:40.00)2.注意:下面出现的“考生文件夹”均为%USER%。 在考生文件夹下存有文件名为 Java_2.java的文件,本题功能是完成点定义,并输出点坐标。请完善
9、Java_2.java文件,并进行调试,使程序结果如下: x=5 y=5 点的坐标是(5,5) x=8 y=9 点的坐标是(8,9) 由于 Java_2.java文件不完整,请在注释行“/*Found*”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。 给定源程序: public class Java_2 public int x,y; public Java_2() public Java_2 (int x,int y) this.x=x; this.y=y; /*Found* public
10、Java_2(_p) x=p.x;y=p.y; public Java_2 getLocation() Java_2 p=new Java_2 (x,y); return p; public int getX() return X; public int getY() return y; public void move (int x,int y) this.x=x; this.y=y; public void setLocation (Java_2 p) x=p.x; y=p.y; public String toString() return(“(“+Integer.toString (x
11、)+“,“+Integer.toString(y)+“)“); public void translate (int x,int y) this.x+=x; this.y+=y; public static void main (String args) /*Found* Java_2 p=new_(5,5)j System.out .printIn(“x=“+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_(); p.translate (3,4); System.out.printIn(“x= “+p.x+“ y=“+p.y); /
12、*Found* System.out.printIn(“点的坐标是“+_(); (分数:40.00)_正确答案:()解析:Java_2 Java_2 p.toString p.toString解析 本程序重载了 Java_2的构造方法,第二个构造方法的参数应该也是一个 Java_2的对象,所以第一处应填入 Java_2,第二处创建了一个 Java_2的实例,所以也应填入 Java_2。第三、四处输出了点 p的坐标,必须调用 toString方法,所以两处都填入p.toString。三、3综合应用题(总题数:1,分数:1.00)3.下面是一个 Applet程序,其功能是接收用户输入的两个整数,比
13、较它们的大小,并在用户按下“比较大小”按钮后,将 Applet 中显示的“请先输入两个待比较的整数”,改为“两个整数中最大值是:x”,x是两个数中的最大值。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: (分数:1.00)_正确答案:()解析:this in1getText() in2getText() 解析 本题主要考查 JavaApplet程序的编写、javaawt 包的基本组件的使用及 supper和 this关键字的使用。解答本题的关键是熟练掌握 Java Applet程序的编写、javaawt 包的基本组件
14、的使用及 supper和 this关键字的使用。Applet(小程序)是一种很重要的 Java程序,是工作在 Internet的浏览器上或借助 JDK中的 appletviewer来工作的 Java程序。编写 Applet小程序必须要用到 javaappelt 包中的 Applet类。javaappletApplet 是 javaawtPanel 的子类。 在本题中,public class LookForMax extends Appkt implements ActionListener 语句的功能是声明一个继承 Applet类且实现 ActionListener 接口的类 LookForMax来实现程序功能,btn.addActionListener(this);语句的功能是为按钮 btn对象注册一个事件监听器 this(this是指当前LookForMax的对象)a=Integer.parseInt(in1getText();和 a=Integer.parseInt(in1.getText();语句的功能是把从文本框 in1和 in2获得的字符型数据转换成基本整型数据,并把这两个值分别赋给变量a和 b。