1、国家二级( JAVA)机试模拟试卷 42及答案与解析 一、基本操作题( 30分) 1 下面的程序是求字符串的长度及每一个位置上的字符。请在每条横线处填写一条语句,使程序的功能完整。 注意;请勿改动 main()主方法和其他已有的语句内容,仅在横线处填入适当的语句。 public class CharAtOp public static void main(String args ) String str=“abcdef“; int size= System.out.println(“字符串 str的长度为 : “+size); for(int m=0;_m+) _ System.out.pri
2、ntln(“str中的第 “+m+“个字符是 : “+c); 二、简单应用题( 40分) 2 请完成下列 Java程序。程序的功能是利用迭代法求一个数的平方根 (求平方根的迭代公式为: Xn+1=1/2(Xn+a/Xn)。 注意:请勿改动 main()主方法和其他已有的语句内容,仅在下划线处填入适当的语句。 public class PingFangGen public static void main(String args ) System.out.println(Math.sqrt(2.0); static double sqrt(_) double x=1.0; do _ while(
3、 Math.abs(x*x-a)/a le-6); return x; 三、综合应用题( 30分) 3 下面是一个 Apple(程序,程序的功能是在 Applet显示区内画一个动态的、多维的绿色椭圆环。本题主要是通过数学方法 sin(), cos()画出一个圆环。请改正程序中的错误 (有下划线的语句 ),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。程序的执行结果: import java.awt.*; import java.awt.event.*; import java.applet.*; public class YuanHuan extends Applet pu
4、blic void paint(Graphics g) double w=getSize().width/2; double h=getSize().height/2; g.getColor(Color.green); for(double th=0;th 10;th+=0.00003) double r=Math.cos(16*th)+th; double x=r*Math.cos(th)+w; double y=r*Math.sin(th)+h; g.drawOval(int)x-1,(int)y-1,3,3); public static void main(String args )
5、Frame f=new Frame(“Draw“); YuanHuan p=new YuanHuan(); p.inti(); p.start(); f.add(p); f.setSize(400,300); f.addWindowListener(new WindowAdapter() public void windowClosing(WindowEvent e) System.out.exit(0); ); f. show ( ); ex3 3_3. htm1: html head title A Simple Program /title /head body applet code=
6、“ YuanHuan.class“ width=800 height=400 /applet /body /html 国家二级( JAVA)机试模拟试卷 42答案与解析 一、基本操作题( 30分) 1 【正确答案】 str.length(); m size; char c=str charAt(m); 【试题解析】 本题主要考查对 String数据的操作的基本知识、 for循环语句的基本知识。解答本题的关键是熟练掌握对 String数据的操作的基本知识、 for循环语句的基本知识。在本题中, int size=str,length();语句的功能是获得字符串对象 str的长度, for(int
7、 m=0; m size; m+)语句中的 m size;是 for循环语句的判断部分, charc=str,charAt(m);语句的功能是获得字符串中指定位置的字符。 二、简单应用题( 40分) 2 【正确答案】 double a x=(x+a x); 【试题解析】 本题主要考查 do-while循环语句及 Java的基本运算。解答本题需要对 do-while循环语句的用法熟练。 do-while循环又称 “直到型 ”循环,它的一般格式为: 初始化部分 do循环体部分;迭代部分; while(判断部分 );说明如下: (1)dowhile结构首先执行循环体,然后计算终止条件,若结果为 tr
8、ue,则循环执行大括号中的语句或代码块,直到布尔表达式的结果为 false。 (2)与 while结构不同的是, do-while结构的循环至少被执行 一次,这是 “直到型 ”循环的特点。在本题中, double a语句是定义一个 double型变量 a, x=(x+a/x);语句的功能是迭代求出被开平方的变量。 三、综合应用题( 30分) 3 【正确答案】 g.setColor(Color green); p init(); System exit(0); 【试题解析】 本题主要考查 Java Applet程序的编写、 for循环语句和 Java程序事件处理机制。解答本题的关键是熟练掌握 Java Applet程序的编写和 Java程序事件处理机制 的知识。在本题中, g.setColor(Color.green);语句的功能是设置所画图形的颜色, p.init();语句的功能是初始化小程序 Applet, System exit(0);语句的功能是关闭窗口,结束小程序的运行。