《java实验及答案.doc》由会员分享,可在线阅读,更多相关《java实验及答案.doc(64页珍藏版)》请在三一办公上搜索。
1、Java实验级答案实验一1. 编写一个程序,在屏幕上显示如下信息: * welcome*2. 写一个Java程序打印出下列信息:姓名 性别 年龄 学号系和专业兴趣爱好3. 编写一个程序,使用while循环计算11000之间能被3和7同时整除的整数之和实验一答案1.1public class welcome public static void main(String args) System.out.println(*); System.out.println( welcome 孙强 ); System.out.println(*);1.2public class Information pu
2、blic static void main(String args)System.out.println(姓名:xxx );System.out.println(性别:女);System.out.println(年龄:18);System.out.println(学号:20132214xxx);System.out.println(系和专业:xxxx);System.out.println(兴趣爱好:Java);1.3public class Sum public static void main(String args) int i=1; int sum=0; while(i=1000) i
3、f(i%7=0&i%3=0) sum+=i; i+; System.out.print(sum=+sum);实验二1. 有一函数,编写一个程序,从键盘输入一个x值,程序输出y的值2. 编写一个程序,使用for循环计算8+88+888+8888+的前十项之和3. 利用for循环打印 9*9 表1*1=11*2=2 2*2=41*3=3 2*3=6 3*3=91*4=4 2*4=8 3*4=12 4*4=161*5=5 2*5=10 3*5=15 4*5=20 5*5=251*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=361*7=7 2*7=14 3*7=21 4*7
4、=28 5*7=35 6*7=42 7*7=491*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=641*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=814. 从键盘输入一个百分制的成绩,输出相应的等级。 90分以上 A级 8089 B级 7079 C级 6069 D级 60分以下 E级实验二答案2.1package cn.ldu.sun;import java.util.Scanner;public class formula public static void ma
5、in(String args) Scanner reader=new Scanner(System.in);int i=reader.nextInt();if(i0)System.out.println(-1+3*i);else System.out.println(-1);2.2package cn.ldu.sun;public class Sum2 public static void main(String args) int sum=0;int temp=8;for(int i=1;i=10;i+)sum+=temp;temp=temp*10+8;System.out.println(
6、sum=+sum);2.3package cn.ldu.sun;public class multiplication public static void main(String args) for(int i=1;i10;i+) for(int j=1;j=i;j+) System.out.print(j+*+i+=+i*j+ ); System.out.print(n); 2.4package cn.ldu.sun;import java.util.Scanner;public class Score public static void main(String args) Scanne
7、r reader=new Scanner(System.in); int score=reader.nextInt();switch(score/10)case 10: case 9:System.out.println(A);break;case 8:System.out.println(B);break;case 7:System.out.println(C);break;case 6:System.out.println(D);break;case 5:case 4:case 3:case 2:case 1:case 0:System.out.println(E);break;defau
8、lt:System.out.println(ERROR);实验三1. 使用Java编写控制台应用程序,用户从键盘输入月份,使用switch语句输出该月份的天数,如果输入月份为2月份,则程序提示让用户输入年份,再输出结果。2. 使用Java编写控制台应用程序,输出九九乘法表。3. 使用Java编写控制台应用程序,计算有固定收入的党员每月所交纳的党费。月工资收入400元及以下者,交纳月工资总额的0.5%;月工资收入401600元者,交纳月工资总额的1%;月工资收入601800元者,交纳月工资总额的1.5%;月工资收入8011500元者,交纳月工资总额的2%;月工资收入1500元以上者,交纳月工资总
9、额的3%。4. 使用Java编写控制台应用程序,用户从键盘输入n天的温度,n由用户指定,求出平均温度、最高和最低温度。实验三答案3.1package exercise1;import java.util.*;public class Month public static void main(String args)Scanner reader=new Scanner(System.in);int month;System.out.printf(请用户输入月份:);int day=0;month=reader.nextInt();if(month=2) System.out.printf(请用
10、户输入年份:); int year=reader.nextInt(); if(year%4=0&year%100!=0|year%400=0) day=29; else day=28;switch(month)case 1:case 3: case 5:case 7:case 8:case 10:case 12: day=31;break;case 4:case 6:case 9:case 11: day=30;break;default: System.out.printf(该月份对应天数为:%d,day);3.2public class Sanjiujiu public static vo
11、id main(String args)for(int i=1;i=9;i+)for(int j=1;j=i;j+)System.out.printf(%d*%d=%-2d,j,i,i*j);System.out.printf( );System.out.printf(n);System.out.printf(n);System.out.printf(n);for(int i=1;i=9;i+)for(int j=1;j=9;j+)System.out.printf(%d*%d=%-2d,i,j,i*j);System.out.printf( );System.out.printf(n);Sy
12、stem.out.printf(n);System.out.printf(n);for(int i=1;i=9;i+)for(int j=i;j=9;j+)System.out.printf(%d*%d=%-2d,i,j,i*j);System.out.printf( );System.out.printf(n);for(int k=1;k=i;k+)System.out.printf( ); 3.3import java.util.*;public class Salary public static void main(String args)Scanner reader=new Scan
13、ner(System.in);System.out.printf(请用户输入工资:);float salary;float _out = 0;salary=reader.nextFloat();if(salary=0)_out=(float)(salary*(0.5/100);else if(salary=401&salary=601&salary=801&salary=1500)_out=(float)(salary*(2/100);else_out=(float)(salary*(3/100);System.out.printf(应缴税:%f,_out);3.4import java.ut
14、il.*;public class Temperature public static void main(String args)System.out.printf(How many days temperatures?);Scanner reader=new Scanner(System.in);int day=0;int sum=0;int max=0;int min=0;float average=0;day=reader.nextInt();for(int i=1;i=5;i+)int tem=reader.nextInt();System.out.printf(Day%ds tem
15、perature is:%d,i,tem);sum+=tem;if(maxtem)min=tem; average=(float)(sum/5.0);System.out.printf(Average temperature:%f,average);System.out.printf(Maxmun temperature:%d,max);System.out.printf(Minmum temperature:%d,min);实验四1. 定义一个int型的一维数组,包含10个元素,从键盘分别赋一些随机整数,然后求出所有元素的最大值,最小值,平均值,和值,并输出出来。2. 定义一个int型的一维
16、数组,包含10个元素,分别赋值为1-10, 然后将数组中的元素都向前移一个位置,即,a0=a1,a1=a2,最后一个元素的值是原来第一个元素的值,然后输出这个数组。3. 定义一个int型的一维数组,包含40个元素,用来存储每个学员的成绩,循环产生40个0-100之间的随机整数,将它们存储到一维数组中,然后统计成绩低于平均分的学员的人数,并输出出来。4. 创建一个整型数组f,拥有20个元素,并将它的各个元素赋值如下,然后,输出它们,并编写一段程序输出fn的值,其中,n为任意 f0=1, f1=2 fi=fi-1+fi-2实验四答案4.1import java.util.*;public clas
17、s shuzu1 public static void main(String args) int a=new int 10;int max=a0;int min=a0;int b,c;double sum=0;double avg=0;for (int i=0;i10;i+) ai=(int)(Math.random()*100);for(b=0;b=9;b+)if(maxai)max=ai;for(c=0;cai)min=ai;for(int a=0;a=a.length;a+)sum+=a;avg=sum/a.length;System.out.println(ai);System.ou
18、t.println(max=+max);System.out.println(min=+min);System.out.println(sum=:+sum);System.out.println(avg=:+avg);4.2public class shuzu2public static void main(String args) int a =1,2,3,4,5,6,7,8,9,10;int temp=a0;for(int i=0;i9;i+)ai=ai+1;a9=temp;System.out.println(ai);4.3public class shuzu3 public stati
19、c void main(String args) int a = new int40; int i=0; int sum=0; double avg = 0; while(i40) ai = (int)(Math.random()*100); i+; i=0; while(i40) sum += ai; i+; avg = sum*1.0/i; System.out.println(学员平均分:+avg); int j=0; i=0; System.out.println(成绩低于平均分的有:); while(i40) if(ai avg) System.out.println(学员+i+成绩
20、:+ai); j+; i+; System.out.println(成绩低于平均分的人数为:+j);4.4import java.util.scanner;public class shuzu4 public static void main(String args) int f = new int20;int i,n;f0=1;f1=2;for(i=2;i20;i+)fi=fi-1+fi-2;for(i=0;i20;i+) System.out.printf(%3d,fi);Scanner a=new Scanner(System.in); n=a.nextInt();System.out.
21、printf(%d,fn);实验五1. 有一列乱序的字符,a、d、m、z、h、c、o,排序并按照英文字母表的逆序输出。2. 编程实现矩形类,其中包含常量:PI,方法:getPerimeter(周长)、getArea(面积)、getVolume(体积),并创建对象测试该类。3. 编写一个计数器类,其中包括属性counter用来保存该计数器类的对象数目;每个对象可以打印其序号(serial number),显示其是第几个生成的对象。4. 定义一个满足下列条件的学生类,并创建其对象,进行测试。 此学生类拥有属性名字、学号、分数(不止一门课程,共10门) 此类提供接受分数输入的方法,计算并返回总分及平
22、均分的方法实验五答案5.1public class _charArray public static void main(String args) char a = a, d, m, z, h, c, o ;for (int i = 0; i a.length; i+) for (int j = 0; j aj + 1) char temp = aj;aj = aj + 1;aj + 1 = temp;for (int i = a.length - 1; i = 0; i-) System.out.print(ai);System.out.print( );5.2package lianxi;
23、class Circleprivate double r;public void setr(double r)this.r=r;public double getPerimeter()return 2*Math.PI*r;public double getArea()return Math.PI*r*r; public double getVolume() return 4/3*Math.PI*r*r*r; public double getRadius() return r; public class shiyan5 public static void main(String args)
24、Circle c=new Circle();c.setr(10);System.out.printf(圆周长为:%fn,c.getPerimeter();System.out.printf(圆面积为:%fn,c.getArea();System.out.printf(圆体积为:%fn,c.getVolume();5.3class Count int serialNumber;static int counter = 0;public Count() counter+;serialNumber = counter;public void printSN() System.out.println(
25、当前对象是第 + this.serialNumber + 个生成对象);public class 三_Count public static void main(String args) Count nancy = new Count();Count Tom = new Count();Count John = new Count();System.out.print(Toms serialNumber is);Tom.printSN();System.out.print(Johns serialNumber is:);John.printSN();System.out.println(一共生
26、成了+Count.counter+个对象);5.4class Student String name;int num;double score = new double5;double total = 0;double average;Student(String name, int num) this.name = name;this.num = num;for (int i = 0; i 5; i+)scorei = 0;void setscore() System.out.println(请输入五门成绩:);for (int i = 0; i 5; i+) Scanner input =
27、 new Scanner(System.in);scorei = input.nextInt();double gettotal() for (int i = 0; i 5; i+)total += scorei;return total;double getaverage() average = total / 5;return average;void display() System.out.println(学号为: + num);System.out.println(姓名为: + name);System.out.println(五门成绩为:);for (int i = 0; i 5;
28、 i+)System.out.print(scorei + t);System.out.println();System.out.println(总分为 + gettotal();System.out.println(平均成绩为 + getaverage();public class 四_student1 public static void main(String args) Student stu = new Student(wang, 2010222111);stu.setscore();stu.display();实验六1. 设一个班有4个学生,每个学生有姓名、学号、成绩等信息,请利用
29、对象数组的概念编程,求平均成绩。2. 有一个二维整型数组int array = 1,2,3, 4,5; 请通过for循环和foreach循环两种方法遍历打印数组的值。3. 设计一个矩阵类,其中允许用户输入矩阵的列数和行数,以及每个元素,并提供矩阵加法和减法的方法。最终运行结果如下图:实验六答案6.1public class StudentArrayTest public static void main(String args) Student students = new Student4;for (int i = 0; i students.length; i+) studentsi =
30、initializeStu();double sum = 0;for (Student student : students) sum += student.getScore();System.out.println(班级学生的平均成绩: + sum / students.length);private static Student initializeStu() Scanner console = new Scanner(System.in);System.out.println(请输入姓名:);String name = console.nextLine();System.out.prin
31、tln(请输入ID:);String sID = console.nextLine();System.out.println(请输入成绩:);int score = Integer.parseInt(console.nextLine();return new Student(name, sID, score);class Student private String name;private String sID;private int score;public Student(String name, String sID, int score) this.name = name;this.
32、sID = sID;this.score = score;public Student(String name) this.name = name;public Student(String name, String sID) this.name = name;this.sID = sID;String getName() return name;void setName(String name) this.name = name;String getsID() return sID;void setsID(String sID) this.sID = sID;int getScore() r
33、eturn score;void setScore(int score) this.score = score;6.2public class TwoDimension public static void main(String args) int array = 1, 2, 3 , 4, 5 ;for (int i = 0; i array.length; i+) for (int j = 0; j arrayi.length; j+) System.out.print(arrayij+) + );System.out.println(n);for (int is : array) for
34、 (int i : is) System.out.print(i + );System.out.println(n);/foreach cannot used to modify collection elements/foreach不能用于修改集合的元素for (int is : array) for (int i : is) System.out.print(i+)+ );System.out.println(n);for (int i = 0; i array.length; i+) for (int j = 0; j = 0 & row = 0 & column getColumn()element = datarowcolumn;elseSystem.out.println(wrong parameters);return element;public static Matrix addMatrix(Matrix a, Matrix b) Matrix result = null;double elements = null;