1、计算机二级 JAVA-34及答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下面程序的功能是从键盘读取一行文本并将该文本存储到文件中。当用户运行该程序时,需要输入一行文本并按下回车键。然后在 DOS系统提示符处输入 type file.txt并按下 Enter键,这时屏幕会显示type file.txt的内容。通过这个命令可以验证该程序的功能。请在每条横线处填写一条语句,使程序的功能完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 源程序文件代码清单如下: import java.io.*;
2、 public class DoFile public static void main(String args) byte buffername=_80; try System.out.println(“/nEnter a line to be saved to disk:“); int bytesbleck= _; FileOutputStream f=new FileOutputStream(“file.txt“); _; catch(Exception e) e.printStackTrace(); (分数:30.00)_二、B2简单应用题/B(总题数:1,分数:40.00)2.注意:
3、下面出现的“考生文件夹”均为%USER%。 在考生文件夹下存有文件名为 Java_2.java的文件,本题功能是完成点定义,并输出点坐标。请完善 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
4、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; public void move (int x,int y) this.x=x; this.y=y; public void setLocation (Java_2
5、 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 p=new_(5,5)j System.out .printIn(“x=“+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_
6、(); p.translate (3,4); System.out.printIn(“x= “+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_(); (分数:40.00)_三、B3综合应用题/B(总题数:1,分数:30.00)3.注意:下面出现的“考生文件夹”均为%USER%。 在考生文件夹中存有文件名为 Java_3.java和Java_3.html文件,本题的功能是用递归定义:n!=n*(n-1)!计算 0至 10的阶乘。请完善 Java_3.java文件,并进行调试(在命令行中使用 appletviewer Java_3.htm
7、l,或者使用集成开发环境),使小程序结果如下: (分数:30.00)_计算机二级 JAVA-34答案解析(总分:100.00,做题时间:90 分钟)一、B1基本操作题/B(总题数:1,分数:30.00)1.下面程序的功能是从键盘读取一行文本并将该文本存储到文件中。当用户运行该程序时,需要输入一行文本并按下回车键。然后在 DOS系统提示符处输入 type file.txt并按下 Enter键,这时屏幕会显示type file.txt的内容。通过这个命令可以验证该程序的功能。请在每条横线处填写一条语句,使程序的功能完整。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的
8、语句。 源程序文件代码清单如下: import java.io.*; public class DoFile public static void main(String args) byte buffername=_80; try System.out.println(“/nEnter a line to be saved to disk:“); int bytesbleck= _; FileOutputStream f=new FileOutputStream(“file.txt“); _; catch(Exception e) e.printStackTrace(); (分数:30.00
9、)_正确答案:(new byte System.in.read(buffername) f.write(buffername,0,bytesblock)解析:解析 本题主要考查基本数据类型、对文件的操作知识。解答本题的关键是熟练掌握基本数据类型、对文件的操作知识。在本题中,byte buffemame=byte100;语句的功能是定义含 100 个整型元素的数组 buffername, System.in.read(buffername);语句的功能是获得标准控制台的输入数据,f.write(buffemame,0, bytesblock)语句的功能是将从标准控制台获得的输入数据写入文件输出流
10、中。二、B2简单应用题/B(总题数: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*”下一行语句的下画线地方填入正确内容,然后删除下画线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。 给定源程序: public cl
11、ass 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; public void move (int x,int y) this.x=x; this.y=
12、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 p=new_(5,5)j System.out .printIn(“x=“+p.x+“ y=“+p.y); /*F
13、ound* System.out.printIn(“点的坐标是“+_(); p.translate (3,4); System.out.printIn(“x= “+p.x+“ y=“+p.y); /*Found* System.out.printIn(“点的坐标是“+_(); (分数:40.00)_正确答案:(Java_2 Java_2 p.toString p.toString)解析:解析 本程序重载了 Java_2的构造方法,第二个构造方法的参数应该也是一个 Java_2的对象,所以第一处应填入 Java_2,第二处创建了一个 Java_2的实例,所以也应填入 Java_2。第三、四处输出
14、了点 p的坐标,必须调用 toString方法,所以两处都填入 p.toString。三、B3综合应用题/B(总题数:1,分数:30.00)3.注意:下面出现的“考生文件夹”均为%USER%。 在考生文件夹中存有文件名为 Java_3.java和Java_3.html文件,本题的功能是用递归定义:n!=n*(n-1)!计算 0至 10的阶乘。请完善 Java_3.java文件,并进行调试(在命令行中使用 appletviewer Java_3.html,或者使用集成开发环境),使小程序结果如下: (分数:30.00)_正确答案:(JApplet getContentPane outputArea)解析:解析 本题使用 appletviewer命令运行,可以判断是 Java Applet小程序,需填入JApplet;Swing 组件应该添加在面板上,需填入 getContentPane;添加对象,需填入 outputArea。