1、计算机二级 JAVA-141 及答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.本题中定义了长度为 20 的一维整型数组 a,并将数组元素的下标值赋给数组元素,最后打印输出数组中下标为奇数的元素。 public class java1( public static void main(Stringargs) int a=_; int i; for(_;i+) ai=i; for(i=0;i20;i+) if(_) System.out.print(“a“+i+“=“+ai+“,“); (分数:30.00)_二、2简单应用题(总题数:1,分
2、数:40.00)2.请完成下列 Java 程序:制作一个图形用户界面,上方包含一个 TextField 和 Button 构件,实现输入字符串,点击 Button 获取文本区的字符:中间显示 Label 的内容:下方是 4 个按钮,分别实现控制 Label在最左边,在中间,在右边和退出程序的功能。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数:40.00)_三、3综合应用题(总题数:1,分数:30.00)3.下面是一个 Applet 程序,其功能是从 3100 之间(包括 3 和 100)每隔 0.5 秒显示一个新的数字,如果数
3、字为素数,则显示为灰色,其他为绿色。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 源程序文件代码清单如下: import java.awt.*; import java.applet.Applet; /* applet code=ex15_3.class width=800 height=400 /applet */ public class ex15_3 extends Applet public Color color15_3 = Color.black; private int n15_3 = 3; public myPrime
4、 thPrime15_3; public void init() thPrime15_3 = new myPrime(this); thPrime15_3.start(); public void paint(Graphics g) g.setColor(color15_3); g. drawString(n15_3, 50, 50) ; public int getInt() return n15_3; public void setInt(int i) n15_3=i; class myPrime extends Thread ex15_3 obj15_3; myPrime (ex15_3
5、 o) this.obj15_3 = o; public boolean isPrime(int n) boolean bPrime = true; int i=2; if(n3|n100) return false; while(in-1 i+; return bPrime; public void run() int i; for (i=3; i100 ; i+) if (isPrime(i) obj15_3.color15_3 = Color.gray; else obj15_3.color15_3 = Color.green; obj15_3.n15_3; obj15_3.repain
6、t(); try sleep(500); catch (InterruptedException ie) _ ex15_3.html HTML HEAD TITLEex15_3/TITLE /HEAD BODY applet code=“ex15_3.class“ width=800 height=400 /applet /BODY /HTML (分数:30.00)_计算机二级 JAVA-141 答案解析(总分:100.00,做题时间:90 分钟)一、1基本操作题(总题数:1,分数:30.00)1.本题中定义了长度为 20 的一维整型数组 a,并将数组元素的下标值赋给数组元素,最后打印输出数组
7、中下标为奇数的元素。 public class java1( public static void main(Stringargs) int a=_; int i; for(_;i+) ai=i; for(i=0;i20;i+) if(_) System.out.print(“a“+i+“=“+ai+“,“); (分数:30.00)_正确答案:()解析:第 1 处:new int20 第 2 处:i=0;i20 第 3 处:i%2! =0 解析 第 1 处定义了长度为 20 的一维整型数组 a;第 2 处的 for 循环将数组元素的下标值赋给数组元素;第 3 处判断数组各个元素下标是否为奇数。
8、二、2简单应用题(总题数:1,分数:40.00)2.请完成下列 Java 程序:制作一个图形用户界面,上方包含一个 TextField 和 Button 构件,实现输入字符串,点击 Button 获取文本区的字符:中间显示 Label 的内容:下方是 4 个按钮,分别实现控制 Label在最左边,在中间,在右边和退出程序的功能。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 程序运行结果如下: (分数:40.00)_正确答案:()解析:add(”South”,p) 1setAlignment(LabelLEFT) 解析 本题主要考查 AWT 基本构件 Bu
9、tton,Pane,Label 和 TextField 结合的简单应用。解题关键是熟悉这几种基本构件一般用法,会设置 Label 在窗口中的位置。本题中,第 1 个空,将面板构件放在窗口的最下方;第 2 个空,根据 Button 事件调用 1 对象的 setAlignment()方法,设置 Label 在面板中的位置。三、3综合应用题(总题数:1,分数:30.00)3.下面是一个 Applet 程序,其功能是从 3100 之间(包括 3 和 100)每隔 0.5 秒显示一个新的数字,如果数字为素数,则显示为灰色,其他为绿色。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:
10、不改动程序的结构,不得增行或删行。 源程序文件代码清单如下: import java.awt.*; import java.applet.Applet; /* applet code=ex15_3.class width=800 height=400 /applet */ public class ex15_3 extends Applet public Color color15_3 = Color.black; private int n15_3 = 3; public myPrime thPrime15_3; public void init() thPrime15_3 = new my
11、Prime(this); thPrime15_3.start(); public void paint(Graphics g) g.setColor(color15_3); g. drawString(n15_3, 50, 50) ; public int getInt() return n15_3; public void setInt(int i) n15_3=i; class myPrime extends Thread ex15_3 obj15_3; myPrime (ex15_3 o) this.obj15_3 = o; public boolean isPrime(int n) b
12、oolean bPrime = true; int i=2; if(n3|n100) return false; while(in-1 i+; return bPrime; public void run() int i; for (i=3; i100 ; i+) if (isPrime(i) obj15_3.color15_3 = Color.gray; else obj15_3.color15_3 = Color.green; obj15_3.n15_3; obj15_3.repaint(); try sleep(500); catch (InterruptedException ie)
13、_ ex15_3.html HTML HEAD TITLEex15_3/TITLE /HEAD BODY applet code=“ex15_3.class“ width=800 height=400 /applet /BODY /HTML (分数:30.00)_正确答案:()解析:String.valueOf(n15_3) i101 或者 i=100 obj15_3.setInt(i) 解析 本题主要考查线程的概念和使用, Applet 的执行过程和窗口,for 循环语句,以及字符串和 int 型的数据转换,及面向对象编程的基本思想。解题关键是熟练地将 Applet 的执行和线程的基本思想结
14、合完成一定的综合性的应用;熟练掌握线程的建立、运行以及线程类与封装类之间的信息传递方式,即通过对象调用封装的方法来进行,如语句 obi15_3.repaint()。本题中,第 1 处,不可以直接填入 n15_3,会导致参数类型不符合的错误,应该用 String 类的 valueOf()方法对 int 型数据进行转换得到 String 类型数据:第 2 处,注意题目要求,需要包括 3 和 100,因此循环变量的上界应该是i101 或者 i100;第 3 处,由于 n15_3 是类 ex15_3 的私有成员变量,因此不可以直接用对象 obj15_3来调用这个成员变量,需要通过类 ex15_3 的方法 setInt()来实现对私有成员的修改。