[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc

上传人:bonesoil321 文档编号:503582 上传时间:2018-11-29 格式:DOC 页数:5 大小:41.50KB
下载 相关 举报
[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc_第1页
第1页 / 共5页
[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc_第2页
第2页 / 共5页
[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc_第3页
第3页 / 共5页
[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc_第4页
第4页 / 共5页
[计算机类试卷]国家二级(JAVA)机试模拟试卷49及答案与解析.doc_第5页
第5页 / 共5页
亲,该文档总共5页,全部预览完了,如果喜欢就下载吧!
资源描述

1、国家二级( JAVA)机试模拟试卷 49及答案与解析 一、基本操作题( 30分) 1 下面的程序中定义了两个方法求自然数 1 100的和。具体如下: int suml(int n);利用循环求 1 n的和, int sum2(int n);利用递归方法求和 1 n的和;在 main()方法中调用这两个方法求 1 100的和并显示。在程序的每条横线处填写一个适当的语句,使程序的功能完整。 public class Sum public static void main(String args) /1调用 suml(int n),求 1 100的和 System out println(“1 10

2、0的和 :“+sum1(100); /2,调用 sum2(int n),求 1 100的和 System.out.println(“1 100的和 :“+sum2(100); static int suml(int n) int result=0; for(int i=1; i =n; i+) _ retrun result; static int sum2(int n) if(_) return 1; else _ 二、简单应用题( 40分) 2 请完成下列 Java程序:用 AWT实现一个图形用户界面,包含一个 List构件和一个 TextField构件, List中包含 5个项目。要求选

3、择不用的项目时,能在 TextField构件中显示出相关的信息,包括事件的名称、选择的项目编号和项目的状态。 注意:请勿改动 main()主方法和其他已有语句内容,仅在下划线处填入适当的语句。 源程序文件代码清单如下: import java.awt.*; import iava.awt.event *; public class ex01_2 extends Frame implements ItemListener private TextField tf; private List 1; public static void main(String arg) ex01_2 obj01_2

4、=new ex01_2(); public ex01 2() setBackgrcund(Color.GRAY); setTitle(“ex01_2“); l=new List(5); l.addItemListener(this); l.addItem(“Item1“); l.addItem(“Item2“); l.addItem(“Item3“); l.addItem(“Item4“); l.addItem(“Item5“); add(“Center“, 1); tf=new TextField(50); add(“South“, tf); _; show(); public void i

5、temStateChanged(ItemEvent event) tf.setText(_); 三、综合应用题( 30分) 3 下面的 Applet程序,其功能为画一个正方形,大小 140*140,其背景色为蓝色(其填充色为 pink色,各边离 Applet的边为 10像素 )和一个 在填充的正方形中自右上到左下来回移动的小球 (半径 15)。请改正程序中的错误 (有下划线的语句 ),使程序执行后,能得到预期的结果。 注意:不改动程序的结构,不得增行或删行。程序的执行结果为: import java.awt.*; import java.applet.*; /* applet code=Bal

6、lAnim width=800 height=600 /applet */ /画一个正方形和一个移动的球,实现了 Runnable接口。 public class BallAnim extends Applet implements Runnable Thread animThread; int ballX=100; /球的 x坐标 int bally; 10; /球的Y坐标 int ballDirection=0; /球移动的方向标志: 0表示从上向下移动, 1表示从下向上移动 public void init() super.setBackground(Color.blue); publi

7、c void start() if (animThread !=null) animThread = new Thread(this); animThread.start(); public void stop() animThread.stop(); animThread = null; / 实现 Runnable接 public void run() Thread.currentThread().setPriority(Thread. NORM_PRIORITY);/设置线呈优先级 NORM_PRIORITY while (true) moveBall(); try Thread.slee

8、p(100); / 休眠 0.1秒 catch (Exception sleepProblem) / This applet ignores any exceptions if it has a problem sleeping. / Maybe it should take Sominex private void moveBall () / 球对角运动 if (ballDirection = 0) ballX-=2; / / 如果球从左向右运动,球的 X坐标减少 2 ballY+=2; / / 如果球 从上向下运动,球的 Y坐标增加 2 if (ballY 100)/球的 Y坐标增加到 1

9、00, 改变球的运动方向 ballDirection = 1; ballX = 10; ballY=100; else ballX+=2; /如果球从右向左运动,球的 X坐标增加 2 ballY-=2;/如果球从下向上运动,球的 Y坐标减少 2 if (bally = 10)/球的 X坐标减少到 10,改变球的运动方向 ballDirection = 0; ballX = 100; ballY=10; paint(); public void paint(Graphics g) g.setColor(Color.pink); g.fillRect(10, 10, 120, 120); g.se

10、tColor(Color.green); g.fillOval(ballX,ballY, 30, 30); ex40_3, html: html head title ex40_3 /title /head body applet code=“ BallAnim.class“ width=800 height=400 /applet /body /html 国家二级( JAVA)机试模拟试卷 49答案与解析 一、基本操作题( 30分) 1 【正确答案】 result+=i; n=1 return n+sum2(n-1); 【试题解析】 本题主要考查递归调用的算法及 for循环语句的使用。解答本

11、题的关键是热练掌握递归调用的算法及 for循环语句的使用在本题中, result+=i;语句的功能是累加求和, if(n=1)语句的功能是判断当 n=1时,累加和为 1, return n+sum2(n-1);语句的功能是递归调用 sum2(int n)方法求和。 二、简单应用题( 40分) 2 【正确答案】 pack() event.paramString() 【试题解析】 本题主要考查 AWT的 List和 TextField构件的简单应用。解题关键是熟悉上述构件的基本使用方法,熟悉 Frame构件的基本方法,会使用ItemEvent的 paramString()方法获得事件的基本信息。本

12、题中,第 1个空需要填入 pack(),否则图形用户界面无法正常显示;第 2个空,调用 event对象的paramString()方法来实现显示事件基本信息的功能。 三、综合应用题( 30分) 3 【正确答案】 this.setBackground(Color.blue); animThread=null repaint(); 【试题解析】 本题主要考查 Java Applet程序的设计, Java语句的线程机制以及for循环语句。解答本题的关键是比较熟练的掌握 JavJava语句的线程机制以及for循环语句的有关知识。线程是程序中的一个执行流。一个执行流是由 CPU运行程序的代码、操纵程序的数据所形成的。创建线程的两种基本方法: (1)通过实现 Runnable接口创建线程。 (2)通过继承 Thread类创建线程。控制线程运行的基本方法有: (1)sleep(),使比其低的优先级线程运行。 (2)stop(),强行终止线程。(3)run(),创建线程体。 (4)start()使新创建的线程处于可运行状态等。在本题中,this.setBackground(Color.blue);语句的功能是设置 Applet显示区的背景色为蓝色, if(animThread !=null)语句的功能 是判断线程 animThread是否存在,语句的功能是重新绘制 Applet。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试资料 > 职业资格

copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1