1、全国计算机等级考试二级 JAVA机试真题 2009年 3月及答案解析(总分:100.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为 Java_1.java文件,请完善 Java_1.java文件,并进行调试,使程序结果为a b c d e f g h i由于 Java_1.java文件不完整,请在注释行“/*Found*”下一行语句的下画线地方填入正确内容,然后删除下划线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。给定源程序:impor
2、t Java.io.*;public class Java_1public static void main(Stringargs)charcharArray=a,b,c,d,e,f,g,h,i;char c;try/*Found*DataOutputStream out=new_(new FileOutputStream(“test.dat“);for(int i=0; icharArray length; i+)out.writeChar(charArrayi);out.close();DataInputStream in=new DataInputStream(/*Found*new F
3、ilelnputStream(“_“);while(in.available()!=0)c=in.readChar();System.out.print(c+“);System.out.println();/*Found*in_();catch(IOException e)(分数:30.00)_二、简单应用题(总题数:1,分数:40.00)2.注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为 Java_2.java文件,本题功能是在 1n 之间的自然数中,每次抽取 k个数字来抽奖,计算中奖几率的算法为n*(n-1)*(n-2)*(n-k+1)/1*2*3*k请完善 J
4、ava_2.java文件,并进行调试,使程序先显示输入窗口如下:(分数:40.00)_三、综合应用题(总题数: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)_全国计算机等级考试二级 JAVA机试真题 2009年 3月答案解析(总分:100.00
5、,做题时间:90 分钟)一、基本操作题(总题数:1,分数:30.00)1.注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为 Java_1.java文件,请完善 Java_1.java文件,并进行调试,使程序结果为a b c d e f g h i由于 Java_1.java文件不完整,请在注释行“/*Found*”下一行语句的下画线地方填入正确内容,然后删除下划线,请勿删除注释行或其他已有语句内容。存盘时,文件必须存放在考生文件夹下,不得改变原有文件的文件名。给定源程序:import Java.io.*;public class Java_1public static
6、 void main(Stringargs)charcharArray=a,b,c,d,e,f,g,h,i;char c;try/*Found*DataOutputStream out=new_(new FileOutputStream(“test.dat“);for(int i=0; icharArray length; i+)out.writeChar(charArrayi);out.close();DataInputStream in=new DataInputStream(/*Found*new FilelnputStream(“_“);while(in.available()!=0)
7、c=in.readChar();System.out.print(c+“);System.out.println();/*Found*in_();catch(IOException e)(分数:30.00)_正确答案:(DataOutputStream test.dat close)解析:解析 创建数据输出流,需填入 DataOutputStream;文件输入流的文件名,需填入 test.dat;关闭数据输入流,需填入 close。二、简单应用题(总题数:1,分数:40.00)2.注意:下面出现的“考生文件夹”均为%USER%。在考生文件夹中存有文件名为 Java_2.java文件,本题功能是
8、在 1n 之间的自然数中,每次抽取 k个数字来抽奖,计算中奖几率的算法为n*(n-1)*(n-2)*(n-k+1)/1*2*3*k请完善 Java_2.java文件,并进行调试,使程序先显示输入窗口如下:(分数:40.00)_正确答案:(JOptionPane input Integer lotteryOdds)解析:解析 输入对话框,需填入 JOptionPane;需转换成整数的字符串变量,需填入 input;将字符串input转换成整数的类方法所属于的类,需填入 Integer;屏幕打印内容,需填入 IotteryOdds。三、综合应用题(总题数:1,分数:30.00)3.注意:下面出现的
9、“考生文件夹”均为%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。