JAVA简明教程习题答案.docx_第1页
JAVA简明教程习题答案.docx_第2页
JAVA简明教程习题答案.docx_第3页
JAVA简明教程习题答案.docx_第4页
JAVA简明教程习题答案.docx_第5页
已阅读5页,还剩38页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

JAVA简明教程习题答案第二章课堂习题: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) /310000中的任意数 int m = 20; int n = 9993; g.drawString(本程序仅对310000中任意取的整数: ,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整除则为偶数,除以2 m = m /2; else /如果不被2整除则为奇数,乘以3再加1 m = m *3 + 1; while (n !=1) /假设最后得到的数一定是1,则如果不为1就换算 if (n %2 = 0) /如果被2整除则为偶数,除以2 n = 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 byte50; /50个字节的数组用于存字符串 String str; long m = 0; System.out.println(请输入310000中的任意整数(回车确认):); try /try 语气 System.in.read(buf); /从键盘读入一数字串保存于buf中 str = new String(buf); /buf转换成字符串对象str m = Long.parseLong(str.trim(); /数字转换成整数 catch (Exception e) /catch语气,Exception为异常类 while (m !=1) /假设最后得到的数一定是1,则如果不为1就换算 if (m %2 = 0) /如果被2整除则为偶数,除以2 m = 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 6; i+) /通过循环赋值方式初始化数组 ai = j+; for(int i = 0; i 3600; i+) /测试3600次 /生成05随机数 int m = (int)(Math.random()*6 ); int n = (int)(Math.random()*6 ); if (am + bn) = 2) /当相加和为2时对应计数器加1 two+; else if (am + bn) = 7) /当相加和为7时对应计数器加1 sev+; else if(am + bn) = 12) /当相加和为12时对应计数器加1 twe+; else /当相加和为其他数时对应计数器加1 oth+; /termination phase 终止段 /输出结果 /(float)two/3600)为将two/3600的结果强制转换成浮点数输出,否则输出为0 System.out.println(相加的和为 2 的次数是:t + two + ;t可能性为:t + (float)two/3600); System.out.println(相加的和为 12 的次数是:t + twe + ;t可能性为:t + (float)twe/3600); System.out.println(相加的和为 7 的次数是:t+ sev + ;t可能性为:t + (float)sev/3600); System.out.println(相加的和为其他数的次数是:t + oth + ;t可能性为:t + (float)oth/3600) ); 第三章课堂习题随机产生26个英文字母a-z,直到大于u为止,用while或for语气实现public class Main public static void main(String args) int letter = 0; System.out.println(用 while 语句实现: ); while(letter u) letter = (int)(Math.random()*26) + a; System.out.println(char)letter); System.out.println(用 for 语句实现: ); for(letter = 97; letter 1); return true; 3-2public class Main public static void main(String args) System.out.println(整数t + 平方t + 立方); /范围010 for(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 input; int width; /矩形的长 public void init() lab = new Label(请输入矩形的长(整数):); /请示标签 input = new TextField(20); /输入文本框 add(lab); /在网页中显示标签lab add(input); /在网页中显示文本框 public boolean action(Event e, Object o) /当用户按下Enter时把输入的字符串转换成整形 if (e.target = input) width = Integer.parseInt( input.getText() ); System.out.println(下面是得到的矩形:); /矩形的上底 for(int i = 0; i width; i+) System.out.print(*); /矩形的边 for (int k = 0; k width-2; k+) System.out.println(); System.out.print(*); /矩形的中间为空 for (int m = 0; m width-2; m+) System.out.print( ); System.out.print(*); System.out.println(); /矩形的下底 for(int j = 0; j width; j+) System.out.print(*); return true; 第四章4-1import java.io.*; public class ReverOrder static int x; int num; int m; int n; /从键盘读入字符串 public static String readString() BufferedReader br = new BufferedReader( new InputStreamReader(System.in),1 ); String string = ; try string = br.readLine(); catch( IOException ex ) System.out.println(ex); return string; /将读入的字符串转换为整形 public static int input() System.out.print(请输入一串数字:t); return Integer.parseInt(readString(); /倒序输入的字符串 int Rorder(int b) num = b; do m = num%10; /求余得最后一个数字 num = num/10; /取整去掉最后一个数字 n = n*10 + m; /把倒置后的数存到n中 while( num != 0); return n; /输出结果 void show(int a) System.out.println(倒序输出为:t + a); /主方法 public static void main(String args) int value; ReverOrder order = new ReverOrder(); x = ReverOrder.input(); /将输入的数传递给x value = order.Rorder(x); /将x倒置 order.show(value); /输出 4-3package homework4_3;import java.io.*;public class Circle static double radius; double length; double area; static boolean checkr; /构造函数初始化半径 public Circle(double r) if(r realNumber) str = JOptionPane.showInputDialog(猜大了,再输入你的猜测: ); yourGuess = Integer.parseInt(str); /重置当前输入的值 /输入的数小于随机生成的数 else if (yourGuess realNumber) str = JOptionPane.showInputDialog(猜小了,再输入你的猜测: ); yourGuess = Integer.parseInt(str); /重置当前输入的值 System.out.print(猜对了!); 补充题:public class Main public static void main(String args) float i = 0; float sum = 1; /总和 int classno = 209; /学号 for (i = 2;i = classno;i+) sum += 1/i; /输入每一项 for (int j = 2; j c) &(b+c)a) & (a+c)b) boo = true; /标记为真 else boo = false; /否则标记为假 /三角形的周长 double getLength() /如果标记为真,即能构成三角形 if(boo) length=sideA+sideB+sideC; /求周长的公式 return length; /返回周长 /否则返回0 else System.out.println(不是三角形,不能计算周长); return 0; /三角形边1 double getsideA() if(boo) return sideA; else System.out.println(边不符合要求,不能计算周长); return 0; /三角形边2 double getsideB() if(boo) return sideB; else System.out.println(边不符合要求,不能计算周长); return 0; /三角形边3 double getsideC() if(boo) return sideC; else System.out.println(边不符合要求,不能计算周长); return 0; /三角形的面积 public double getArea() /如果标记为真,即能构成三角形 if(boo) double p=(sideA+sideB+sideC)/2.0; area =Math.sqrt(p*(p-sideA)*(p-sideB)*(p-sideC); /求面积公式 return area; /返回面积 /否则返回0 else System.out.println(不是三角形,不能计算面积); return 0; public void setABC(double a,double b,double c) sideA = a; sideB = b; sideC = c; if(a+b)c)&(a-b)c) boo=true; else boo=false; /圆类class Circle double r, area, length; public Circle(double a) r = a; /圆的周长 public double getLength() length = Math.PI*r*2; return length; /圆的面积 public double getArea() area = Math.PI*r*r; return area; /梯形类class Lader double sideup, sidesb, sidel, sider,area, length; public Lader(double a,double b,double c,double e) sideup = a; sidesb = b; sidel = c; sider = e; double getLength() length=sideup + sidesb + sidel + sider; return length; public double getArea() area = (sideup + sidesb)*sidel)/2; return area; public class AreaAndLength public static void main(String args) double length, area; double sideA,sideB,sideC; Circle circle = null; Triangle triangle; Lader lader; /调用Circle 方法返回周长并赋值给length circle = new Circle(19); /修改圆的半径为19 length = circle.getLength(); System.out.println(圆的周长:+ length); /调用Circle 方法返回面积并赋值给area area = circle.getArea(); System.out.println(圆的面积:+ area); /给边值 triangle = new Triangle(3,4,5); /求边 sideA = triangle.getsideA(); sideB = triangle.getsideB(); sideC = triangle.getsideC(); /输出边 System.out.println(三角形的第

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论