JAVA上机实验报告整理版.docx
《JAVA上机实验报告整理版.docx》由会员分享,可在线阅读,更多相关《JAVA上机实验报告整理版.docx(22页珍藏版)》请在冰豆网上搜索。
JAVA上机实验报告整理版
浙江工商大学计算机与信息工程学院
2012/2013
(1)学期上机实验报告
课程名称:
Java程序设计实验姓名:
学号:
指导教师:
班级:
日期:
结构化程序设计
【一】实验内容及要求
实验目的:
了解Java的数据类型,掌握各种变量的声明方式;理解运算符的优先级,掌握Java基本数据类型、运算符与表达式、数组的使用方法;理解Java程序语法结构,掌握顺序结构、选择结构和循环结构语法的程序设计方法
实验内容:
1)使用continue语句实现:
将100~300之间的不能被3整除的数输出。
2)使用break语句实现记数:
从1~100,当数到78时程序终止。
3)分别使用for语句编程,找出所有的水仙花数并输出。
水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:
371=33+73+13,371就是一个水仙花数。
4)编写一程序,判断2011年份是否是闰年,并在屏幕上输出判断结果。
5)由用户输入一个整数,由程序判断是否为素数,并给出结果。
或由用户输入一个范围,程序列出该范围内的全部素数
【二】完成报告
1.publicclasszjgsu_GJ{
publicstaticvoidmain(String[]args){
intk;
for(k=100;k<=300;k++){
if(k%3!
=0)
System.out.println(k);
elsecontinue;
}
2.publicclasszjgsu_GJ{
for(k=1;k<=100;k++){
if(k==78)
break;
3.publicclasszjgsu_GJ{
intk,a,b,c;
for(k=100;k<=999;k++){
a=k/100;
b=(k%100)/10;
c=(k%100)%10;
if(k==a*a*a+b*b*b+c*c*c)
4.publicclasszjgsu_GJ{
intk=2011;
if((k%4==0&&k%100!
=0)||(k%400==0))
System.out.println(k+"年是闰年");
else
System.out.println(k+"不年是闰年");
5.importjava.util.Scanner;
publicclasszjgsu_GJ
{
publicstaticvoidmain(Stringargs[])throwsjava.io.IOException
intm,n;
Scannerscan=newScanner(System.in);
n=scan.nextInt();
for(m=2;m{if(n%m==0)break;}if(m==n)System.out.println(n+"是素数");elseSystem.out.println(n+"不是素数");}} 实验名称:面向对象程序设计(一)【一】实验内容及要求实验目的:1、熟悉使用Java常用类2、掌握类的定义以及使用3、理解类的封装性、继承性、多态性4、熟悉构造函数的概念和使用实验内容:1)定义一个类MyValue,其中包括:用Value来保存一属性值;方法setValue设置Value,方法getValue获取Value,定义一个类UseValue,在该类的Main方法里面完成如下功能:创建一个MyValue类的对象MyValue{MyValuek=newMyValue()};为MyValue对象中的Value赋值10{k.setValue(10)};使用getValue方法获得MyValue对象中的数据并在屏幕上输出{System.out.println(k.getValue())}。2)编写Java代码实现一个计数器类Computer,其中包括:用CountValue来保存计数器的当前值。方法Computer(inta)是构造方法并给CountValue赋初值。方法increment()计数器加一方法decrement()计数器减一方法reset()计数器清零使用计数器类创建一对象,该计数器对象当前值为10,调用三次increment(),输出计数器当前值,调用一次decrement(),输出计数器当前值,调用reset(),输出计数器当前值.3)定义一个名字为MyRectangle的矩形类,类中有4个私有的整型成员变量,分别是矩形的左上角坐标(xUp,yUp)和右下角坐标(xDown,yDown);类中定义了无参数的构造方法和有4个int参数的构造方法,用来初始化类对象。类中还有以下方法:getW()-计算矩形的宽度;getH()-计算矩形的高度;area()-计算矩形的面积;toString()-把矩形的宽、高和面积等信息作为一个字符串返回。编写应用程序使用MyRectangle类。【二】完成报告1.classMyValue{privateintvalue;publicvoidsetvalue(intx){value=x;}publicintgetValue(){returnvalue;}}classUseValue{publicstaticvoidmain(Stringargs[]){MyValuek=newMyValue();k.setvalue(10);System.out.println(k.getValue());}} 2.publicclassComputer{publicintCountValue;publicComputer(inta){CountValue=a;}publicvoidincrement(){CountValue++;}publicvoiddecrement(){CountValue--;}publicvoidreset(){CountValue=0;}publicstaticvoidmain(Stringargs[]){Computerk=newComputer(10);k.increment();k.increment();k.increment();System.out.println(k.CountValue);k.decrement();System.out.println(k.CountValue);k.reset();System.out.println(k.CountValue);}} 3.classMyRectangle{privateintxUp,yUp,xDown,yDown;publicMyRectangle(){xUp=0;yUp=0;xDown=0;yDown=0;}publicMyRectangle(intx1,inty1,intx2,inty2){xUp=x1;yUp=y1;xDown=x2;yDown=y2;}publicintgetW(){returnxDown-xUp;}publicintgetH(){returnyDown-yUp;}publicintarea(){returngetW()*getH();}publicStringtoString(){return"矩形宽"+getW()+"矩形高"+getH()+"矩形面积"+area();}}classceshi{publicstaticvoidmain(Stringargs[]){MyRectanglek=newMyRectangle(5,6,7,8);System.out.println(k.toString());}} 实验名称:面向对象程序设计(二)【一】实验内容及要求实验目的:1、了解包的作用,掌握包的层次结构结构2、理解接口作用,掌握接口的使用技术实验内容:1)定义一个接口,接口中有四个抽象方法:求面积方法、求周长方法、显示面积方法及显示周长方法。定义Circle类和Rectangle类分别实现接口,在主类中实现显示圆和矩形的面积和周长。2)重写上面的程序,要求矩型,圆的类放到不同的包中,用包的技术组织程序的设计。同时要求程序能从键盘上接受数据以便求解不同的几何图形的周长面积。提示:从键盘上输入双精度数的一种方法(程序片段)……publicstaticvoidmain(Stringargs[])throwsIOException{BufferedReaderkeyin=newBufferedReader(newInputStreamReader(System.in));Stringx;x=keyin.readLine();doublea=Double.parseDouble(x);【二】完成报告1.interfaceShape{publicabstractvoidmb_getArea();publicabstractdoublemb_showArea();publicabstractvoidmb_getPerimeter();publicabstractdoublemb_showPerimeter();}classCircleimplementsShape{publicdoublem_radius,C_Area,C_Perimeter;publicCircle(doubler){m_radius=r;}publicvoidmb_getArea(){C_Area=Math.PI*m_radius*m_radius;}publicdoublemb_showArea(){returnC_Area;}publicvoidmb_getPerimeter(){C_Perimeter=2*Math.PI*m_radius;}publicdoublemb_showPerimeter(){returnC_Perimeter;}}classRectangleimplementsShape{publicdoublelongs,wides,R_Area,R_Perimeter;publicRectangle(doublel,doublew){longs=l;wides=w;}publicvoidmb_getArea(){R_Area=longs*wides;}publicdoublemb_showArea(){returnR_Area;}publicvoidmb_getPerimeter(){R_Perimeter=(2*(longs+wides));}publicdoublemb_showPerimeter(){returnR_Perimeter;}}publicclasstest{publicstaticvoidmain(Stringargs[]){Circlea=newCircle(4);Rectangleb=newRectangle(4,3);a.mb_getArea();a.mb_getPerimeter();b.mb_getArea();b.mb_getPerimeter();System.out.println("theareaofCircleis:"+a.mb_showArea());System.out.println("theperimeterofCircleis:"+a.mb_showPerimeter());System.out.println("theareaofrectangleis:"+b.mb_showArea());System.out.println("theperimeterofrectangleis:"+b.mb_showPerimeter());}}或者interfacetest{publicabstractvoidgetArea();publicabstractvoidshowArea();publicabstractvoidgetPerimeter();publicabstractvoidshowPerimeter();}classCircleimplementstest{publicdoubleC_radius,C_Area,C_Perimeter;publicCircle(doubler){C_radius=r;}publicvoidgetArea(){C_Area=Math.PI*C_radius*C_radius;}publicvoidshowArea(){System.out.println("theAreaofCircleis"+C_Area);}publicvoidgetPerimeter(){C_Perimeter=2*Math.PI*C_radius;}publicvoidshowPerimeter(){System.out.println("thePerimeterofCircleis"+C_Perimeter);}}classRectangleimplementstest{publicdoublelongs,wides,R_Area,R_Perimeter;publicRectangle(doublem,doublen){longs=m;wides=n;}publicvoidgetArea(){R_Area=longs*wides;}publicvoidshowArea(){System.out.println("theAreaofCircleis"+R_Area);}publicvoidgetPerimeter(){R_Perimeter=2*(longs+wides);}publicvoidshowPerimeter(){System.out.println("thePerimeterofCircleis"+R_Perimeter);}}publicclasszjgsu_GJ{publicstaticvoidmain(Stringargs[]){Circlek=newCircle(5);Rectanglel=newRectangle(3,4);k.getArea();k.showArea();k.getPerimeter();k.showPerimeter();l.getArea();l.showArea();l.getPerimeter();l.showPerimeter();}}2.packageMyCircle;interfacetest{publicabstractdoublegetArea();publicabstractdoublegetPerimeter();}classCircleimplementstest{publicdoubleradious;publicCircle(doublex){radious=x;}publicdoublegetArea(){return(Math.PI*radious*radious);}publicdoublegetPerimeter(){return(Math.PI*radious*2);}} packageMyRectangle;interfacetest{publicabstractdoublegetArea();publicabstractdoublegetPerimeter();}classRectangleimplementstest{publicdoublelongs,wides;publicRectangle(doublel,doublew){longs=l;wides=w;}publicdoublegetArea(){return(longs*wides);}publicdoublegetPerimeter(){return(2*(longs+wides));}} importMyCircle.Circle;importMyRectangle.Restangle;importjava.io.BufferedReader;importjava.io.IOException;importjava.io.InputStreamReader; publicclasszjgsu_GJ{publicstaticvoidmain(Stringargs[])throwsIOException{BufferedReaderinput=newBufferedReader(newInputStreamReader(System.in));System.out.print("关于圆的面积和周长:\n");System.out.print("Enteronenumber:");intnumber=Integer.parseInt(input.readLine());Circlea=newCircle(number);System.out.println("theareaofcircleis:"+a.getArea());System.out.println("theperimeterofcircleis:"+a.getPerimeter());System.out.print("关于矩形的面积和周长:\n");System.out.print("Enteronenumber1:");intnumber1=Integer.parseInt(input.readLine());System.out.print("Enteronenumber2:");intnumber2=Integer.parseInt(input.readLine());testb=newRectangle(number1,number2);System.out.println("theareaofrectangleis:"+b.getArea());System.out.println("theperimeterofrectangleis:"+b.getPerimeter());}}实验名称:字符串、数组、异常处理【一】实验内容及要求实验目的:5、掌握数组的使用方法6、掌握字符串类的使用方法实验内容:1、编写一程序,随机生成5个不大于100的整数存入一数组,计算该数组的平均值,输出该5个整数及平均值。2、编写一程序,该程序输入一个字符串参数,返回该字符串的反序字符串3、编写一程序,计算矩阵A={{7,9,4},{5,6,8}}与矩阵B={{9,5,2,8},{5,9,7,2},{4,7,5,8}}相乘,把结果存入矩阵C,并在屏幕输出结果。【二】完成报告1.publicclassArrayDemo{staticdoubleAverageArray(inta[]){doubleaverage=0;inti;for(i=0;iaverage=average+a[i];}return(double)average/a.length;}publicstaticvoidmain(Stringargs[]){intk;intnumber[]=newint[5];for(k=0;knumber[k]=(int)(Math.random()*100);System.out.println(number[k]+"");}System.out.println("\nTheAverageis:"+AverageArray(number));}}2.importjava.io.*;pu
if(n%m==0)
if(m==n)
System.out.println(n+"是素数");
System.out.println(n+"不是素数");
实验名称:
面向对象程序设计
(一)
1、熟悉使用Java常用类
2、掌握类的定义以及使用
3、理解类的封装性、继承性、多态性
4、熟悉构造函数的概念和使用
1)定义一个类MyValue,其中包括:
用Value来保存一属性值;方法setValue设置Value,方法getValue获取Value,
定义一个类UseValue,在该类的Main方法里面完成如下功能:
创建一个MyValue类的对象MyValue{MyValuek=newMyValue()};为MyValue对象中的Value赋值10{k.setValue(10)};使用getValue方法获得MyValue对象中的数据并在屏幕上输出{System.out.println(k.getValue())}。
2)编写Java代码实现一个计数器类Computer,其中包括:
用CountValue来保存计数器的当前值。
方法Computer(inta)是构造方法并给CountValue赋初值。
方法increment()计数器加一
方法decrement()计数器减一
方法reset()计数器清零
使用计数器类创建一对象,该计数器对象当前值为10,调用三次increment(),输出计数器当前值,调用一次decrement(),输出计数器当前值,调用reset(),输出计数器当前值.
3)定义一个名字为MyRectangle的矩形类,类中有4个私有的整型成员变量,分别是矩形的左上角坐标(xUp,yUp)和右下角坐标(xDown,yDown);类中定义了无参数的构造方法和有4个int参数的构造方法,用来初始化类对象。
类中还有以下方法:
getW()-计算矩形的宽度;
getH()-计算矩形的高度;
area()-计算矩形的面积;
toString()-把矩形的宽、高和面积等信息作为一个字符串返回。
编写应用程序使用MyRectangle类。
1.
classMyValue{
privateintvalue;
publicvoidsetvalue(intx){
value=x;
publicintgetValue(){
returnvalue;
classUseValue{
publicstaticvoidmain(Stringargs[]){
MyValuek=newMyValue();
k.setvalue(10);
System.out.println(k.getValue());
2.
publicclassComputer{
publicintCountValue;
publicComputer(inta){
CountValue=a;
publicvoidincrement(){
CountValue++;
publicvoiddecrement(){
CountValue--;
publicvoidreset(){
CountValue=0;
Computerk=newComputer(10);
k.increment();
System.out.println(k.CountValue);
k.decrement();
k.reset();
3.
classMyRectangle{
privateintxUp,yUp,xDown,yDown;
publicMyRectangle(){
xUp=0;yUp=0;xDown=0;yDown=0;
publicMyRectangle(intx1,inty1,intx2,inty2){
xUp=x1;yUp=y1;xDown=x2;yDown=y2;
publicintgetW(){
returnxDown-xUp;
publicintgetH(){
returnyDown-yUp;
publicintarea(){
returngetW()*getH();
publicStringtoString(){
return"矩形宽"+getW()+"矩形高"+getH()+"矩形面积"+area();
classceshi{
MyRectanglek=newMyRectangle(5,6,7,8);
System.out.println(k.toString());
(二)
1、了解包的作用,掌握包的层次结构结构
2、理解接口作用,掌握接口的使用技术
1)定义一个接口,接口中有四个抽象方法:
求面积方法、求周长方法、显示面积方法及显示周长方法。
定义Circle类和Rectangle类分别实现接口,在主类中实现显示圆和矩形的面积和周长。
2)重写上面的程序,要求矩型,圆的类放到不同的包中,用包的技术组织程序的设计。
同时要求程序能从键盘上接受数据以便求解不同的几何图形的周长面积。
提示:
从键盘上输入双精度数的一种方法(程序片段)
……
publicstaticvoidmain(Stringargs[])throwsIOException
BufferedReaderkeyin=newBufferedReader(newInputStreamReader(System.in));
Stringx;
x=keyin.readLine();
doublea=Double.parseDouble(x);
interfaceShape{
publicabstractvoidmb_getArea();
publicabstractdoublemb_showArea();
publicabstractvoidmb_getPerimeter();
publicabstractdoublemb_showPerimeter();
classCircleimplementsShape{
publicdoublem_radius,C_Area,C_Perimeter;
publicCircle(doubler){
m_radius=r;
publicvoidmb_getArea(){
C_Area=Math.PI*m_radius*m_radius;
publicdoublemb_showArea(){
returnC_Area;
publicvoidmb_getPerimeter(){
C_Perimeter=2*Math.PI*m_radius;
publicdoublemb_showPerimeter(){
returnC_Perimeter;
classRectangleimplementsShape{
publicdoublelongs,wides,R_Area,R_Perimeter;
publicRectangle(doublel,doublew){
longs=l;
wides=w;
R_Area=longs*wides;
returnR_Area;
R_Perimeter=(2*(longs+wides));
returnR_Perimeter;
publicclasstest
publicstaticvoidmain(Stringargs[])
Circlea=newCircle(4);
Rectangleb=newRectangle(4,3);
a.mb_getArea();
a.mb_getPerimeter();
b.mb_getArea();
b.mb_getPerimeter();
System.out.println("theareaofCircleis:
"+a.mb_showArea());
System.out.println("theperimeterofCircleis:
"+a.mb_showPerimeter());
System.out.println("theareaofrectangleis:
"+b.mb_showArea());
System.out.println("theperimeterofrectangleis:
"+b.mb_showPerimeter());
或者
interfacetest{
publicabstractvoidgetArea();
publicabstractvoidshowArea();
publicabstractvoidgetPerimeter();
publicabstractvoidshowPerimeter();
classCircleimplementstest{
publicdoubleC_radius,C_Area,C_Perimeter;
C_radius=r;
publicvoidgetArea(){
C_Area=Math.PI*C_radius*C_radius;
publicvoidshowArea(){
System.out.println("theAreaofCircleis"+C_Area);
publicvoidgetPerimeter(){
C_Perimeter=2*Math.PI*C_radius;
publicvoidshowPerimeter(){
System.out.println("thePerimeterofCircleis"+C_Perimeter);
classRectangleimplementstest{
publicRectangle(doublem,doublen){
longs=m;wides=n;
System.out.println("theAreaofCircleis"+R_Area);
R_Perimeter=2*(longs+wides);
System.out.println("thePerimeterofCircleis"+R_Perimeter);
publicclasszjgsu_GJ{
Circlek=newCircle(5);
Rectanglel=newRectangle(3,4);
k.getArea();
k.showArea();
k.getPerimeter();
k.showPerimeter();
l.getArea();
l.showArea();
l.getPerimeter();
l.showPerimeter();
packageMyCircle;
publicabstractdoublegetArea();
publicabstractdoublegetPerimeter();
publicdoubleradious;
publicCircle(doublex)
radious=x;
publicdoublegetArea(){
return(Math.PI*radious*radious);
publicdoublegetPerimeter(){
return(Math.PI*radious*2);
packageMyRectangle;
publicdoublelongs,wides;
publicRectangle(doublel,doublew)
return(longs*wides);
return(2*(longs+wides));
importMyCircle.Circle;
importMyRectangle.Restangle;
importjava.io.BufferedReader;
importjava.io.IOException;
importjava.io.InputStreamReader;
BufferedReaderinput=newBufferedReader(newInputStreamReader(System.in));
System.out.print("关于圆的面积和周长:
\n");
System.out.print("Enteronenumber:
");
intnumber=Integer.parseInt(input.readLine());
Circlea=newCircle(number);
System.out.println("theareaofcircleis:
"+a.getArea());
System.out.println("theperimeterofcircleis:
"+a.getPerimeter());
System.out.print("关于矩形的面积和周长:
System.out.print("Enteronenumber1:
intnumber1=Integer.parseInt(input.readLine());
System.out.print("Enteronenumber2:
intnumber2=Integer.parseInt(input.readLine());
testb=newRectangle(number1,number2);
"+b.getArea());
"+b.getPerimeter());
字符串、数组、异常处理
5、掌握数组的使用方法
6、掌握字符串类的使用方法
1、编写一程序,随机生成5个不大于100的整数存入一数组,计算该数组的平均值,输出该
5个整数及平均值。
2、编写一程序,该程序输入一个字符串参数,返回该字符串的反序字符串
3、编写一程序,计算矩阵A={{7,9,4},{5,6,8}}与矩阵
B={{9,5,2,8},{5,9,7,2},{4,7,5,8}}相乘,把结果存入矩阵C,并在屏幕输出结果。
publicclassArrayDemo{
staticdoubleAverageArray(inta[]){
doubleaverage=0;
inti;
for(i=0;iaverage=average+a[i];}return(double)average/a.length;}publicstaticvoidmain(Stringargs[]){intk;intnumber[]=newint[5];for(k=0;knumber[k]=(int)(Math.random()*100);System.out.println(number[k]+"");}System.out.println("\nTheAverageis:"+AverageArray(number));}}2.importjava.io.*;pu
average=average+a[i];
return(double)average/a.length;
intnumber[]=newint[5];
for(k=0;knumber[k]=(int)(Math.random()*100);System.out.println(number[k]+"");}System.out.println("\nTheAverageis:"+AverageArray(number));}}2.importjava.io.*;pu
number[k]=(int)(Math.random()*100);
System.out.println(number[k]+"");
System.out.println("\nTheAverageis:
"+AverageArray(number));
importjava.io.*;
pu
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1