1、国家二级( JAVA)机试模拟试卷 98及答案与解析 一、基本操作题( 30分) 1 请完善程序 (程序文件名: Java_1.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。 题目要求 计算复杂利息,使程序输出结果如下图所示。源程序: /计算复杂利息 import java.text.DecimalFormat; import javax.swing.JOptionPane; import javax.swing.JTextArea; public class Java_1 public static void main(String ar
2、gs) double amount, principal=1000.0,rate=.05; DecimalFormat precisionTwo=new DecimalFormat(“0.00“); JTextArea outputTextArea=new (1) (11,20); outputTextArea append(“年 t存款总计 n“); for(int year=1; year =10; year+) amount=principal * Math.pow(1.0+rate,year); outputTextArea.append (year+“t“+ precisionTwo
3、 (2) (amount)+“n“): JOptionPane (3) ( null,outputTextArea, “复合利息 “, JOptionPane.INFORMATION_MESSAGE); System.exit(0); 二、简单应用题( 40分) 2 请完善程序 (程序文件名: Java_2.java),并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句内容。 题目要求 本题功能是创建一个二维整型数组,并将其元素输出。 运行结果为: 1 1 1 1 2 2 2 2 3 3 3 3 4 4 4 4 源程序: public class Java_2
4、 public static void main(String args) int aMatrix=1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4; int i=0; /循环变量 int j=0; /循环变量 for(i=0; i (1) ; i+) for(j=0; j aMatrixi.length; j+)System.out.print( (2) +“ “); System.out.println(); 三、综合应用题( 30分) 3 请完善程序 (程序文件名: Java_3.java)并进行调试。请在下画线处填入正确内容,然后删除下画线。请勿删除注释行和其他已有的语句
5、内容。 题目要求 用冒泡法对数据进行排序,使程序的输出结果如下。 排序前: 32 18 41 23 2 56 36 67 59 20 排序后: 2 18 20 23 32 36 41 56 59 67 源程序: import java.io.*; public class Java_3 public static int data=32,18,41,23,2,56,36,67,59,20; public static void main(String args) int i: int index=data. (1) ; System.out.println(“排序前 :“); for(i=0;
6、i index;i+)System.out.print(“ “+datai+“ “); System.out.println(); BubbleSort( (2) ); System.out.println(“排序后 :“); for(i=0;i index;i+)System.out.print(“ “+datai+“ “); System.out.println(); /冒泡法排序 public static void BubbleSort(int index) int i,j; int temp; for(j=1;j index;j+) for(i=index-1;i =j;i-) if
7、(datai datai-1) /比较相邻的两个数 temp=datai; datai=datai-1; datai-1= (3) ; 国家二级( JAVA)机试模拟试卷 98答案与解析 一、基本操作题( 30分) 1 【正确答案】 JTextArea format showMessageDialog 【试题解析】 以对话框的方式输出,所以此处应该是方法showMessageDialog()。关于 showMessageDialog()的具体解释可以参见第 2套题综合应用题的解析。 程序解析 本程序计算复杂利息并用对话框输出。在对话框中又添加了文本框来显示内容。另外还用到了 DecimalFo
8、rmat, DecimalFormat是 NumberFormat的一个具体子类,用于格式化十进制数,这里用到了方法 format(): public StringBuffer format(double number, StringBuffer result, FieldPosition fieldPosition) 格式化一个 double值,以生成一个字符串。 二、简单应用题( 40分) 2 【正确答案】 aMatrix.length aMatrixij 【试题解析】 此条语句为输出语句,输出当前元素,因此为 aMatrixij。 程序解析 本程序主要考查数组的长度 length,即数组元素的个数。对于二维数组,可视为数组元素,又可视为数组。本程序中的数组即是一个 4个元素的数组,而每个元素又是一个含有 4个整型元素的数组。对于本题的二维数组,也可理解为 aMatrix.length 即为行数, aMatrixi.length 即为 i行的列数。 三、综合应用题( 30分) 3 【正确答案】 length index temp