JAVA2简明教程习题答案
JAVA2 简明教程习题答案声明: 答案以老师讲复习题为主,仅供参考.∪∩BUG整理于 2008 07 03第二章课堂习题:public class Main {public static void main(String[] args) {//initialization phase 初始段float f1 = 2.5f;float f2;int a = 7;int b = 2;int c;//processing phase 处理段f2 = f1 + (a/b); c = (a/b);//termination phase 终止段System.out.println(“f2 的值为: “ + f2);System.out.println(“c 的值为: “ + c);}}课后习题:2-4(小程序部分)import java.applet.*;import java.awt.*;public class Gess extends Applet{public void paint(Graphics g) {//3~10000 中的任意数int m = 20;int n = 9993;g.drawString(“本程序仅对 3~10000 中任意取的整数 : “,80,50); g.drawString(“20“ ,80,65); g.drawString(“9993“ ,80,80); g.drawString(“进行测试! “ ,80,95); while (m !=1) //假设最后得到的数一定是 1,则如果不为 1 就换算{if (m %2 == 0) //如果被 2 整除则为偶数 ,除以 2m = m /2;else //如果不被 2 整除则为奇数 ,乘以 3 再加 1{m = m *3 + 1;}}while (n !=1) //假设最后得到的数一定是 1,则如果不为 1 就换算{if (n %2 == 0) //如果被 2 整除则为偶数 ,除以 2n = n /2;else //如果不被 2 整除则为奇数,乘以 3 再加 1{n = n *3 + 1;}}g.drawString(“20 换算后的值为: “ + m,80,110); g.drawString(“9993 换算后的值为: “ + m,80,125); }}(程序部分)import java.io.*; //引入 java.io 中的所有类( 含输入输出类), 因为程序中要用到输入类的read()方法public class Main {public static void main(String[] args){byte []buf =new byte[50]; //50 个字节的数组用于存字符串String str; long m = 0;System.out.println(“请输入 3~10000 中的任意整数(回车确认):“);try //try 语气{System.in.read(buf); //从键盘读入一数字串保存于 buf 中str = new String(buf); //buf 转换成字符串对象 strm = Long.parseLong(str.trim()); //数字转换成整数}catch (Exception e){} //catch 语气,Exception 为异常类while (m !=1) //假设最后得到的数一定是 1,则如果不为 1 就换算{if (m %2 == 0) //如果被 2 整除则为偶数 ,除以 2m = m /2;else //如果不被 2 整除则为奇数 ,乘以 3 再加 1{m = m *3 + 1;}}System.out.println(“换算后的值为:\t“ + m);}}2-6public class Main {public static void main(String[] args) {// initialization phase //初始段int j = 1;int []a; //用于存放第一个骰子的点数的整形数组int []b; //用于存放第二个骰子的点数的整形数组int two = 0; //相加和为 2 的计数器int sev = 0; //相加和为 7 的计数器int twe = 0; //相加和为 12 的计数器int oth = 0; //相加和为其他数的计数器a = new int [6]; //分配数组空间b = a; //骰子的点数相同,这里将数组 a 赋给数组 b(这时 b 和 a 同用一块内存空间)//processing phase 处理段for(int i = 0; i 1);}return true;}}3-2public class Main {public static void main(String[] args) {System.out.println(“整数\t“ + “平方\t“ + “立方“);//范围 0~10for(int i = 0; i <= 10; i++){//依次打印输出整数, 平方,立方System.out.println(i + “\t“ + i*i + “\t“ + i*i*i);}}}3-3public class Main {public static void main(String[] args) {// 把图分成三部分左中右三部分打印for(int i = 0; i < 5;i++ ){//循环打印出左边部分for(int j = 0; j <= i;j++){System.out.print(“*“);}//循环打印出中间部分for(int k = 2*i; k < 18; k++) //空格要考虑前后各少一个所以从 2*i 开始{System.out.print(“ “);}//循环打印出右边部分for(int m = 0; m <= i;m++){System.out.print(“*“);}System.out.println();}System.out.println();}}3-4import java.applet.Applet;import java.awt.*;public class Rectangle extends Applet {Label lab;TextField ;int width; //矩形的长public void init(){ lab = new Label(“请输入矩形的长 (整数):“); //请示标签 = new TextField(20); //输入文本框add(lab); //在网页