1、java实验答案解读 实验一水仙花数:class shuixianhua/水仙花数public static void main(String arg)int i,a,a1,b,b1,c;for(i=100;i1000;i+) a=i%10; a1=i/10; b=a1%10; b1=a1/10; c=b1%10; if(i=(a*a*a+b*b*b+c*c*c) System.out.println(i); 输出如下:153370371407打印出100以内素数:public class sushu /* * param args */ public static void main(Str
2、ing args) / TODO Auto-generated method stub int i,j,k=0; for(i=2;i100;i+) if(i=2) System.out.println(i); i+; for(j=2;ji;j+) if(i%j!=0) k=1; if(k=1) System.out.println(i); 求1!+2!+20!public class jiecheng public static void main(String args) int i,sum=0,k; for(i=1;i=20;i+) k=ji(i); sum=k+sum; System.o
3、ut.print(sum); static int ji(int n) if(n=1) return 1; else return ji(n-1)*n; 习题2.6public class Testpublic static void main(String args)/第19题,打出图形.菱形 int n=3; for(int i=1;i=i;k-) System.out.print( ); for(int j=1;j=2*i-1;j+)/打印* System.out.print(*); System.out.println(); 编写程序,命令行窗口输出希腊字母表。(希腊字母表开始为,最后
4、一个为)import java.applet.*;import java.awt.*;public class myapplet extends Applet public void paint(Graphics g) String str=; for(char a=;a;a+) str+=a; g.drawString(str, 2, 10); 实验二设计一个名为figure的图形软件包(package)。包中包含三角形、矩形、圆三个类。要求:(1)每个类都要构造方法并为成员设置get和set方法;(2)每个类都要有计算周长和面积的成员方法;(3)完成该软件包后的编码后,在另一个包的含有ma
5、in方法的类中编写代码,分别使用图形软件包中的三个类,生成三个对象,并打印出其周长和面积。Triangle.javapackage figure;public class Triangle private double a,b,c; public Triangle(double x,double y,double z) a = x; b = y; c = z; public void get() public void set(double x,double y,double z) a = x; b = y; c = z; public double Perimeter() double pe
6、r = a + b + c; return per; public double Area() double area = 0; double p=(a+b+c)/2; double s = p*(p-a)*(p-b)*(p-c); area = (double)Math.sqrt(s); return area; Rectangle.javapackage figure;public class Rectangle private double length; private double width; public Rectangle(double l,double w) length =
7、 l; width = w; public void get() public void set(double l,double w) length = l; width = w; public double Perimeter() double per = 2*(length + width); return per; public double Area() double area = length * width; return area; Circle.javapackage figure;public class Circle private double r; private do
8、uble PI = 3.14; public Circle(double x) r = x; public double get() return r; public void set(double x) r = x; public double Perimeter() double per = 2*(PI * r); return per; public double Area() double area = PI*(double)Math.pow(r,2); return area; figureTest.javapackage Test;import figure.Circle;impo
9、rt figure.Rectangle;import figure.Triangle;public class figureTest public static void main(String args) Circle c =new Circle(3.2); System.out.println(c.Area(); System.out.println(c.Perimeter(); Rectangle r = new Rectangle(3,4); System.out.println(r.Area(); System.out.println(r.Perimeter(); Triangle
10、t = new Triangle(3,4,4); System.out.println(t.Area(); System.out.println(t.Perimeter(); 编写类Factorial,为其添加两个静态方法(方法名自定义)。其中一个使用递归计算n的阶乘,一个使用非递归计算n的阶乘。构造main方法进行测试。public class Fac public static void main(String args) int n = 5; long fac = digui(n); long fac2 = nonDigui(n); /循环方法 private static long n
11、onDigui(int n) long fac = 1L; for(int i = 1; i=n ;i+) fac = fac * i; return fac; /递归 private static long digui(int n) if(n = 1) return 1; return n * digui(n-1); 按照要求使用Java进行编码。1)设计一个教师类Teacher,属性有编号(no)、姓名(name)、年龄(age)、所属学院(seminary),为这些属性设置相应的get和set方法;2)为Teacher类添加方法equals;(当两个教师对象的no相同时返回true)3)
12、为Teacher类添加方法toString,通过该方法可以返回“编号为*、姓名为*、年龄为*的*学院老师”形式的字符串。4)构造main方法进行测试。Teacher.javapublic class Teacher public static int num; public int no; public String name; public int age; public String seminary; public Teacher() super(); public Teacher(int no, String name, int age, String seminary) super(
13、); this.no = no; this.name = name; this.age = age; this.seminary = seminary; public static int getNum() return num; public static void setNum(int num) Teacher.num = num; public int getAge() return age; public void setAge(int age) this.age = age; public String getName() return name; public void setNa
14、me(String name) this.name = name; public int getNo() return no; public void setNo(int no) this.no = no; public String getSeminary() return seminary; public void setSeminary(String seminary) this.seminary = seminary; public boolean equals(Object otherObject) if (otherObject = null) return false; if (
15、getClass() != otherObject.getClass() return false; Teacher other = (Teacher) otherObject; return no = other.no; public String toString() return 编号: + getNo() + 姓名: + getName() + 年龄: + getAge()+ 学院老师:+ getSeminary(); -TestTeacher.javapublic class TestTeacher public static void main(String args) Teach
16、er t1 = new Teacher(1,zhangsan,43,计算机); System.out.println(t1.getNo(); System.out.println(t1.getName(); System.out.println(t1.getAge(); System.out.println(t1.getSeminary(); System.out.println(t1.toString(): + t1); t1.setName(wangwu); t1.setAge(50); t1.setSeminary(国际经贸); System.out.println(t1.getNo()
17、; System.out.println(t1.getName(); System.out.println(t1.getAge(); System.out.println(t1.getSeminary(); Teacher.setNum(Teacher.getNum() + 1); System.out.println(Teacher.getNum(); Teacher t2 = new Teacher(2,lisi,44,经管); Teacher.setNum(Teacher.getNum() + 1); System.out.println(Teacher.getNum(); Teache
18、r t3 = new Teacher(3,zhouwu,45,信息); Teacher.setNum(Teacher.getNum() + 1); System.out.println(Teacher.getNum();System.out.println(t2)设计一个带表头的单链表(链表中的元素属于同一类型对象,但对象的类型可以随意),提供以下操作:(1)insert:在某个位置插入对象;(2)delete:在某个位置删除对象;(3)delete:删除链表中与x相同的元素;(4)size:返回当前链表中对象的个数;(5)isEmpty:判断链表是否为空;(6)traverse:遍历链表,打
19、印出所有的元素;(7)getData:取得某个位置的对象。构造main函数进行测试。public class Code private int data;private Code next;public int getData() return data;public void setData(int data) this.data = data;public Code getNext() return next;public void setNext(Code next) this.next = next;public class List public Code head;List()th
20、is.head=new Code();head.setData(0);List(int n)this.head=new Code();Code p,temp;p=head;for(int i=0;ihead.getData()System.out.println(找不到第+n+个节点);return;Code temp;temp=head;for(int i=0;ihead.getData()+1)System.out.println(找不到第+n+个节点);return;Code p=new Code();p.setData(d);Code temp;temp=head;for(int i=
21、0;i1 | str.charAt(0)52 | str.charAt(0) 3 | select 0) System.out.print(输入不合法!请输入(0-3)的整数: ); continue; break; catch(Exception ne) System.out.print(输入的不是(0-3)之间的整数,请重新输入: ); continue; switch(select)/ 处理用户要执行的功能 case 1: / 处理圆的情况 System.out.println(请输入圆的半径: ); while(true) try str=buf.readLine(); radius
22、= Float.parseFloat(str); /Circle circle =new Circle(radius); if(radius=0) System.out.print(圆的半径应为大于0的实数,请重新输入圆的半径: ); continue; System.out.println(圆的半径为: + radius); gp = new Circle(radius); gp.area(); gp.perimeter(); break;/ 退出循环 catch( NumberFormatException ne) System.out.println(输入的数据不合要求!n请重新输入圆的半径: ); continue; break; case 2: /
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1