Java语言 实验项目.docx
《Java语言 实验项目.docx》由会员分享,可在线阅读,更多相关《Java语言 实验项目.docx(25页珍藏版)》请在冰豆网上搜索。
Java语言实验项目
《Java语言》实验项目
实验一、熟悉Java语言的编写、编译和运行,熟悉JavaIDE的使用【2学时】
任务1:
Page26,ProgrammingExercises1.1
任务2:
熟悉一种JavaIDE的基本操作,使用它创建一个简单的JavaApplication
实验二、Java基本数据类型及操作【2学时】
任务:
Page63,ProgrammingExercises2.2,2.8,2.9,2.11
importjava.util.Scanner;
publicclassFuture{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
doubleamount,year,value;
System.out.println("请输入你存入的本金和年数:
");
Scannerinput=newScanner(System.in);
amount=input.nextDouble();
year=input.nextDouble();
//System.out.println(Math.pow(3,2));
value=amount*Math.pow(1.0325,12*year);
System.out.println(value);
}
}
importjava.util.*;
publicclassAsscii{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
System.out.println("ASCII表:
");
for(inti=1;i<=127;i++)
{if(i%5==0)
System.out.println();
System.out.print(i+":
"+(char)i+"");
}
System.out.println();
System.out.println("请输入你要查询的ASCII字符!
");
Scannerinput=newScanner(System.in);
intx=input.nextInt();
System.out.println(x+"对应的字符为:
"+(char)x+"");
}
}
importjava.util.Scanner;
publicclassArea{
staticdoublepi=3.141;
privatedoubler;
privatedoublelength;
privatedoublearea;
publicArea(doubler,doublelength){
this.r=r;
this.length=length;
}
publicdoublegetArea(){
area=pi*r*r;
returnarea;
}
publicdoublegetVolume(){
returnthis.getArea()*length;
}
publicstaticvoidmain(String[]args){
System.out.println("请输入圆柱的半径和高");
Scannerinput=newScanner(System.in);
doubler=input.nextDouble();
doublelength=input.nextDouble();
Areaarea=newArea(r,length);
System.out.println("该圆的柱的底面积为:
"+area.getArea());
System.out.println("该圆柱的体积为:
"+area.getVolume());
}
实验三、Java选择语句和循环语句【2学时】
任务1:
Page93,ProgrammingExercises3.3,3.9
任务2:
Page122,ProgrammingExercises4.2,4.21,4.24
importjava.util.*;
publicclassDisvible{
publicbooleanisDisvible(intx)
{
if(x%5==0&&x%6==0)
returntrue;
else
returnfalse;
}
publicintisDisvible1(intx){
if(x%5==0&&x%6==0)
return1;
if(x%5==0||x%6==0)
return0;
return-1;
}
publicstaticvoidmain(String[]args){
intx,m;
booleant;
System.out.println("请输入一个整数!
");
Scannerinput=newScanner(System.in);
x=input.nextInt();
Disvibled=newDisvible();
t=d.isDisvible(x);
System.out.println(t);
m=d.isDisvible1(x);
if(m==1)
System.out.println("both");
elseif(m==0)
System.out.println("notboth");
else
System.out.println("false");
}
}
importjava.util.Scanner;
publicclassTriangle{
publicbooleanisTriangle(doublex,doubley,doublez)
{
if(x+y>z&&x+z>y&&z+y>x)
returntrue;
else
returnfalse;
}
publicstaticvoidmain(String[]args){
System.out.println("请输入三角行的三边!
");
Scannerinput=newScanner(System.in);
intx,y,z;
booleanb;
x=input.nextInt();
y=input.nextInt();
z=input.nextInt();
Trianglet=newTriangle();
b=t.isTriangle(x,y,z);
if(b)
{
System.out.println("可以构成三角形!
");
}
else
{
System.out.println("不可以构成三角形!
");
}
}
}
4.2
packagecom.loops;
importjava.util.Scanner;
publicclassAverage{
publicstaticvoidmain(String[]args){
doublevalue;
doubleaverage;
doublesun=0.0;
intn=-1;
Scannerinput=newScanner(System.in);
System.out.println("输入一组非0数据,以0结束!
");
do{
value=input.nextDouble();
n++;
sun+=value;
}while(value!
=0);
average=sun/n;
System.out.println("该组数的总和是:
"+sun+";输入数的个数为:
"+n+";平均数是:
"+average);
4.24
packagecom.loops;
publicclassSum{
publicstaticvoidmain(String[]args){
doublesum=0.0;
doublem;
m=1.0;
for(;m<100;m=m+2.0){
sum+=m/(m+2.0);
}
System.out.println("sum的值为:
"+sum);
}
}
实验四、Java方法【4学时】
目的:
掌握Java方法的创建、调用、传值;理解并掌握方法重载、方法抽象;理解变量的作用域;
任务:
Page163,ProgrammingExercises5.3,5.4,5.9,5.10,5.18,5.19,5.24
packagecom.loops;
importjava.util.*;
publicclassReverse{
publicstaticvoidmain(String[]args)
{intn,m;
Scannerinput=newScanner(System.in);
System.out.println("请输入你要翻转的数:
");
n=input.nextInt();
m=Reverse.reverseorder(n);
}
publicstaticvoidreverseorder(intn){
intm=0;
while(n!
=0)
{
m=m*10+n%10;
n=n/10;
}
System.out.println("结果为:
"+m);
}
}
5.4
packagecom.loops;
importjava.util.*;
publicclassReverse{
publicstaticvoidmain(String[]args)
{intn,m;
Scannerinput=newScanner(System.in);
System.out.println("请输入你要翻转的数:
");
n=input.nextInt();
m=Reverse.reverseorder(n);
System.out.println("结果为:
"+m);
}
publicstaticintreverseorder(intn){
intm=0;
while(n!
=0)
{
m=m*10+n%10;
n=n/10;
}
returnm;
}
}
5.9
packagecom.loops;
publicclassConverts{
publicstaticvoidmain(String[]args){
System.out.println("feetmeter");
for(doublei=0.0;i<=10.0;i++){
System.out.println(i+""+Converts.foottometer(i));
}
System.out.println("meterfeet");
for(doublei=20.0;i<=65.0;i=i+5.0){
System.out.println(i+""+Converts.metertofoot(i));
}
}
publicstaticdoublemetertofoot(doublemeter){
returnmeter/0.305;
}
publicstaticdoublefoottometer(doublefoot){
returnfoot*0.305;
}
}
5.10
packagecom.loops;
importjava.util.Scanner;
publicclassDivisor{
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System.in);
inta,b,c;
System.out.println("请输入你要求最大公约数的两个整数!
");
a=input.nextInt();
b=input.nextInt();
c=Divisor.gcd(a,b);
System.out.println("他们的最大公约数是:
"+c);
}
publicstaticintgcd(inta,intb){
intc;
for(;;)
{
if(a%b==0)returnb;
if(b%a==0)returna;
c=a%b;
a=b;
b=c;
}
}
}
5.18
packagecom.loops;
publicclassSqrt{
publicstaticvoidmain(String[]args){
System.out.println("numbersquareRoot");
for(doublei=0.0;i<=20.0;i=i+2){
System.out.println(i+""+Math.sqrt(i));
}
}
}
5.19
packagecom.loops;
importjava.util.*;
publicclassTringle{
publicstaticbooleanisValid(doublex,doubley,doublez)
{
if(x+y>z&&x+z>y&&z+y>x)
returntrue;
else
returnfalse;
}
publicstaticdoublearea(doublex,doubley,doublez){
doubles=(x+y+z)/2;
returnMath.sqrt(s*(s-x)*(s-y)*(s-z));
}
publicstaticvoidmain(String[]args){
Scannerinput=newScanner(System.in);
doublex,y,z;
System.out.println("请输入三角形的三边长!
");
x=input.nextDouble();
y=input.nextDouble();
z=input.nextDouble();
if(Tringle.isValid(y,y,z))
{
System.out.println("三角形的面积是:
"+Tringle.area(x,y,z));
}
else
{
System.out.println("你输入的三边不符合三角形构成的要求!
");
}
}
}
5.24
packagecom.jw;
importjava.util.Date;
importjavax.swing.JOptionPane;
publicclassDateDisplay{
publicstaticJOptionPanej=newJOptionPane();
publicstaticvoidmain(String[]args){
longtmi=System.currentTimeMillis();
longts=tmi/1000;
intcs=(int)ts%60;
longtm=ts/60;
intcm=(int)tm%60;
longth=tm/60;
intch=(int)th%24+8;
j.showMessageDialog(null,getyear(th)+"-"+getMonth(th)+"-"+getday(th)+"-"+ch+"-"+cm+"-"+cs);
}
publicstaticintgetyear(longth)
{
longday=th/24;
intyear=1970;
while(true)
{
if((year%100!
=0&&year%4==0)||year%400==0)
{if(day<366)
returnyear;
day-=366;
year++;
}
else
{
if(day<365)
returnyear;
day-=365;
year++;
}
}
}
publicstaticintgetMonth(longth)
{
longday=getdays(th);
System.out.println(day);
intyear=getyear(th);
int[]mt;
if((year%100!
=0&&year%4==0)||year%400==0)
{
mt=newint[]{31,29,31,30,31,30,31,31,30,31,30,31};
}
else
{
mt=newint[]{31,28,31,30,31,30,31,31,30,31,30,31};
}
inti=0;
for(;day>mt[i];i++){
day-=mt[i];
}
i++;
returni;
}
publicstaticlonggetdays(longth){
longday=th/24;
intyear=1970;
while(true)
{
if((year%100!
=0&&year%4==0)||year%400==0)
{if(day<366)
{
returnday;
}
day-=366;
year++;
}
else
{
if(day<365)
returnday;
day-=365;
year++;
}
}
}
publicstaticintgetday(longth)
{
longday=getdays(th);
intyear=getyear(th);
int[]mt;
if((year%100!
=0&&year%4==0)||year%400==0)
{
mt=newint[]{31,29,31,30,31,30,31,31,30,31,30,31};
}
else
{
mt=newint[]{31,28,31,30,31,30,31,31,30,31,30,31};
}
inti=0;
for(;day>mt[i];i++){
day-=mt[i];
}
return(int)day+1;
}
}}
}
实验五、Java数组【2学时】
目的:
掌握Java数组的创建、初始化、数组元素的访问方法;理解在方法中数组作为参数和返回值含义;熟悉常见的排序方法
任务:
Page204,ProgrammingExercises6.8,6.11,6.21,6.26
6.8
packagecom.jw6_8;
publicclassAverage{
publicstaticvoidmain(String[]args){
int[]a1=newint[]{1,2,3,4,5,6};
double[]a2=newdouble[]{6.0,4.4,1.9,2.9,3.4,3.5};
System.out.println(avergeInt(a1));
System.out.println(averagedouble(a2));
}
publicstaticintavergeInt(int[]array)
{intsum=0;
for(inti=0;i{
sum+=array[i];
}
returnsum/array.length;
}
publicstaticdoubleaveragedouble(double[]array){
doublesum=0;
for(inti=0;isum+=array[i];
}
returnsum/array.length;
}
}
6.11
packagecom.jw6_11;
publicclassDeviation{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
double[]a=newdouble[]{1,2,3,4,5,6,7,8,9};
System.out.println(getdeviation(a));
}
publicstaticdoublegetdeviation(double[]array){
doublemean,sum=0,deviation;
for(inti=0;isum+=array[i];
}
mean=sum/array.length;
sum=0;
for(inti=0;isum+=Math.pow((array[i]-mean),2);
}
deviation=Math.sqrt(sum/(array.length-1));
returndeviation;
}
}
6.21
packagecom.jw6_21;
publicclassSum{
publicstaticvoidmain(String[]args){
int[][]a=newint[][]{{1,2