java实验报告材料完整版.docx
《java实验报告材料完整版.docx》由会员分享,可在线阅读,更多相关《java实验报告材料完整版.docx(58页珍藏版)》请在冰豆网上搜索。
java实验报告材料完整版
实验报告
(计算机与信息工程学院实验中心)
学期:
2014-2015
课程名称:
《Java程序设计实验》
班级:
信息1202
姓名:
方逸梅
学号:
1212100231
指导老师:
费玉莲
《Java程序设计》
独立实验教学安排
一、实验的教学方式、安排及实验环境
(一)教学方式
对照本课程的实验教材,实验一至实验十一,由教师提示实验原理、方法、步骤等容,在教师的指导下,学生独立完成程序设计及调试工作。
实验十二的容由学生自行设计完成。
(二)教学安排
学时数:
30课时
学时安排:
每次实验3学时,从学期第五周开始,共十次上机实验。
(三)实验环境
实验环境为JDK1.6。
(四)具体安排
地点:
信息大楼实验室。
辅导:
每个班次一名辅导老师,原则上由任课老师担任。
登记:
实验完成,由辅导老师登记实验纪录。
学生:
实验做完,完成实验报告容,并在学期末上交实验册。
老师:
批改实验,成绩与平时成绩一起占期末的30%。
二、实验的具体容和要求
见实验报告。
工商大学
计算机与信息工程学院实验报告
(1)
日期:
地点:
成绩:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
实验目的、实验原理和容:
一、实验目的:
熟悉Java开发环境及简单程序Java设计。
二、实验原理:
SDK的下载与安装,设置环境变量,安装java虚拟机,使用Eclipse,编译Java源程序,运行Java程序。
三、实验容及要求:
1.下载、安装并设置JavaSDK软件包。
2.熟悉Eclipse编辑软件。
3.掌握运行Java程序的步骤。
4.分别编写Application和Applet程序,显示字符串”HelloJava!
欢迎使用!
”。
要求:
请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。
程序一
publicclasshello{
publicstaticvoidmain(String[]args){
for(inti=0;i<=4;i++)
{
System.out.println("Hellojava!
欢迎使用!
");
}
}
}
结果示意图1
存在的问题
1、JAVA存在大小写,因为system没有区分大小写所以出现编译错误。
2、用DOS进入java源程序时,先要用cd转入java源程序所在路径。
程序二
importjava.awt.Graphics;
importjava.applet.Applet;
publicclasshelloworldextendsApplet
{
publicvoidpaint(Graphicsg)
{
g.drawString("Hellojava!
欢迎使用!
",25,25);
}
}
方法1
直接将程序二打入到java应用程序中,可调出如下图界面
结果示意图2
程序三
helloworld2>
该程序是网页的脚本程序,html文件类型,可直接双击打开。
工商大学
计算机与信息工程学院实验报告
(2)
日期:
地点:
成绩:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
实验目的、实验原理和容:
一、实验目的:
Java结构化程序设计。
二、实验原理:
声明不同数据类型的变量,使用关系运算符和逻辑运算符,使用表达式语句与复合语句,使用选择语句,使用循环语句。
三、实验容及要求:
1.编程输入学生的学习成绩的等级,给出相应的成绩围。
设A级为85分以上(包括85);B级为70分以上(包括70分);C级为60分以上(包括60分);D级为60分以下。
分别使用if语句和switch语句实现。
2.使用continue语句实现:
将100~300之间的不能被3整除的数输出。
3.使用break语句实现记数:
从1~100,当数到78时程序终止。
4、分别使用while、do-while和for语句编程,找出所有的水仙花数并输出。
水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:
371=33+73+13,371就是一个水仙花数。
要求:
请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。
1.编程输入学生的学习成绩的等级,给出相应的成绩围。
设A级为85分以上(包括85分);B级为70分以上(包括70分);C级为60分以上(包括60分);D级为60分以下。
分别使用if语句和switch语句实现。
IF语句
importjava.util.*;
publicclassdengji{
publicstaticvoidmain(String[]args)
{
System.out.println("请输入等级:
");
Scannersc=newScanner(System.in);
Stringgrade=sc.next();
if(grade.equals("A"))
System.out.println("围在[85,100)");
elseif(grade.equals("B"))
System.out.println("围在[70,85)");
elseif(grade.equals("C"))
System.out.println("围在[60,70)");
elseif(grade.equals("D"))
System.out.println("围在[0,60)");
else
System.out.println("输入有误!
");
}
}
Switch语句
publicclasstest{
publicstaticvoidmain(String[]args)
{
chargrade='';
System.out.println("请输入等级:
");
try
{
grade=(char)System.in.read();
}catch(Exceptione){}
switch(grade)
{
case'A':
System.out.println("围在85~100");
break;
case'B':
System.out.println("围在70~85");
break;
case'C':
System.out.println("围在60~70");
break;
case'D':
System.out.println("围在60分以下");
break;
default:
System.out.println("输入有误!
");
}
}
}
2.使用continue语句实现:
将100~300之间的不能被3整除的数输出。
publicclasssushu{
publicstaticvoidmain(String[]args){
for(inti=100;i<300;i++)
{
if(i%3==0)
continue;
System.out.println(i);
}
}
}
3.使用break语句实现记数:
从1~100,当数到78时程序终止。
publicclassstop{
publicstaticvoidmain(String[]args){
for(inti=1;i<=100;i++)
{
System.out.println(i);
if(i==78)
break;
}
}
}
4、分别使用while、do-while和for语句编程,找出所有的水仙花数并输出。
水仙花数是三位数,它的各位数字的立方和等于这个三位数本身,例如:
371=33+73+13,371就是一个水仙花数。
For语句
publicclassnum1{
publicstaticvoidmain(String[]args){
intx,y,z,i,sum;
for(i=100;i<1000;i++)
{
z=i%100%10;
y=i/10;
y=y%10;
x=i/100;
sum=x*x*x+y*y*y+z*z*z;
if(sum==i)
System.out.println(sum+"是水仙花数");
}
}
}
While语句
publicclassnum1{
publicstaticvoidmain(String[]args){
intx,y,z,i=100,sum;
while(i<1000)
{
z=i%100%10;
y=i/10;
y=y%10;
x=i/100;
sum=x*x*x+y*y*y+z*z*z;
if(sum==i)
System.out.println(sum+"是水仙花数");
i++;
}
}
}
Do-while语句
publicclassnum1{
publicstaticvoidmain(String[]args){
intx,y,z,i=100,sum;
do{
z=i%100%10;
y=i/10;
y=y%10;
x=i/100;
sum=x*x*x+y*y*y+z*z*z;
if(sum==i)
System.out.println(sum+"是水仙花数");
i++;
}while(i<1000);
}
}
工商大学
计算机与信息工程学院实验报告(3)
日期:
地点:
成绩:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
实验目的、实验原理和容:
一、实验目的:
面向对象程序设计设计
(一)
二、实验原理:
创建Applet应用小程序,创建对象并使用对象,编写显示当前日期和时间的程序,使用修饰符,方法中参数传递的练习,类的继承性练习,类的多态性。
三、实验容及要求:
1、一个景区根据游人的年龄收取不同价格的门票。
请编写游人类,该类包含两个成员域:
年龄和票价;两个方法:
设置年龄和根据年龄段决定能够购买的门票价格并输出。
然后写出该类实例测试该类(类的基本实现)
2.
(1)编写一个圆类Circle,该类拥有:
①一个成员变量
Radius(私有,浮点型);//存放圆的半径;
②两个构造方法
Circle()//将半径设为0
Circle(doubler)//创建Circle对象时将半径初始化为r
③三个成员方法
doublegetArea()//获取圆的面积
doublegetPerimeter()//获取圆的周长
voidshow()//将圆的半径、周长、面积输出到屏幕
(2)编写一个圆柱体类Cylinder,它继承于上面的Circle类。
还拥有:
①一个成员变量
doublehight(私有,浮点型);//圆柱体的高;
②构造方法
Cylinder(doubler,doubleh)//创建Circle对象时将半径初始化为r
③成员方法
doublegetVolume()//获取圆柱体的体积
voidshowVolume()//将圆柱体的体积输出到屏幕
编写应用程序,创建类的对象,分别设置圆的半径、圆柱体的高,计算并分别显示圆半径、圆面积、圆周长,圆柱体的体积。
要求:
请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。
1、
importjava.util.*;
publicclassvisitor{
intage;
intprice;
publicvoidsetage(intage)
{
this.age=age;
}
publicvoidticket(){
if(age>0&&age<=8)
price=0;
elseif(age<22)
price=40;
elseif(age<60)
price=80;
else
price=20;
System.out.println("门票价格"+price);
}
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
System.out.println("请输入年龄:
");
visitoryouren=newvisitor();
youren.setage(sc.nextInt());
youren.ticket();
}
}
2、
publicclasscircle{
doubleradius;
circle(){
radius=0.0;
}
circle(doubler)
{
radius=r;
}
publicdoublegetarea()
{
returnMath.PI*radius*radius;
}
publicdoublegetperimeter()
{
return2*Math.PI*radius;
}
voidshow()
{
System.out.println("圆的半径:
"+radius);
System.out.println("圆的周长:
"+getperimeter());
System.out.println("圆的面积:
"+getarea());
}
}
publicclasscylinderextendscircle{
doubleheight;
cylinder(doubler,doubleh){
super(r);
height=h;
}
doublegetvolume()
{
returnheight*getarea();
}
voidshowvolume()
{
System.out.println("圆柱体的体积:
"+getvolume());
}
}
publicclasstest1{
publicstaticvoidmain(String[]args){
circleci=newcircle(10.0);
ci.show();
cylindercy=newcylinder(3.0,4.0);
cy.show();
cy.showvolume();
}
}
工商大学
计算机与信息工程学院实验报告(4)
日期:
2014.11.5地点:
信息楼227成绩:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
实验目的、实验原理和容:
一、实验目的:
数组、字符串与异常处理。
二、实验原理:
使用数组,使用字符串与字符串类,处理异常。
三、实验容及要求:
1、编写一程序,计算矩阵A={{7,9,4},{5,6,8}}与矩阵B={{9,5,2,8},{5,9,7,2},{4,7,5,8}}相乘,把结果存入矩阵C,并在屏幕输出结果。
2、使用冒泡排序(数组,数字为:
63,4,24,1,3,5)
3、编写程序,测试字符串“你好,欢迎来到Java世界”的长度,将字符串的长度转换成字符串进行输出,并对其中的“Java”四个字母进行截取,输出截取字母以及它在字符串中的位置。
要求:
请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。
1、
publicclassjuzhen
{
publicstaticvoidmain(Stringargs[])
{
intintMatrixA[][]={{7,9,4},{5,6,8}};
intintMatrixB[][]={{9,5,2,8},{5,9,7,2},{4,7,5,8}};
intintMatrixC[][]=newint[2][4];
Multiply(intMatrixA,intMatrixB,intMatrixC);
System.out.println("\n****MatrixA****");
OutputMatrix(intMatrixA);
System.out.println("\n****MatrixB****");
OutputMatrix(intMatrixB);
System.out.println("\n****MatrixC****");
OutputMatrix(intMatrixC);
}
staticvoidMultiply(intintMatrixA[][],intintMatrixB[][],intintMatrixC[][])
{
inti,j,k;
for(i=0;i{
for(j=0;j{
intMatrixC[i][j]=0;
for(k=0;k{
intMatrixC[i][j]+=intMatrixA[i][k]*intMatrixC[k][j];
}
}
}
}
staticvoidOutputMatrix(intintMatrix[][])
{
inti,j;
for(i=0;i{
for(j=0;j{
System.out.print(intMatrix[i][j]+"");
}
System.out.println();
}
}
}
2、
publicclassmaopao{
publicstaticvoidmain(String[]args){
inta[]={63,4,24,1,3,5};
inti,j;
for(i=0;i<5;i++)
{
for(j=0;j<5-i;j++)
{
if(a[j]>a[j+1])
{
inttemp=a[j];
a[j]=a[j+1];
a[j+1]=temp;
}
}
}
for(i=0;i<6;i++)
{
System.out.print(a[i]+"");
}
}
}
3、
publicclassjiequ{
publicstaticvoidmain(String[]args){
Stringa=newString("你好,欢迎来到Java世界");
inti=a.length();
intj;
char[]c=a.toCharArray();
System.out.println(String.valueOf(i));
for(j=0;j{
if(c[j]=='J')
{
System.out.println("J所在位置为:
"+(j+1));
break;
}
}
//Stringd=a.substring(j,j+4);
System.out.println("截取的字符串为:
"+a.substring(j,j+4));
}
}
工商大学
计算机与信息工程学院实验报告(5)
日期:
地点:
成绩:
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
实验目的、实验原理和容:
一、实验目的:
文件与数据流。
二、实验原理:
使用标准输入输出流,使用字符输入输出流,使用随机文件类,文件的读写操作。
三、实验容及要求:
1、输入8个整数的数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。
2、创建一个文本文件memo.txt,编写程序实现打开该文本文件,每次读取一行容,将每行作为一个字符串读入,并将字符串输出显示到屏幕上。
附加题:
1、古典问题:
有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少?
2、将一个正整数分解质因数。
例如:
输入90,打印出90=2*3*3*5。
3、输入两个正整数m和n,求其最大公约数和最小公倍数。
4、 输入一行字符,分别统计出其中英文字母、空格、数字和其它字符的个数。
5、求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。
例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。
要求:
请同学把预备知识、步骤、程序框图、调试好的程序及存在的问题写在下面(不够可以附页)。
1、
importjava.util.Scanner;
publicclassswap{
publicstaticvoidmain(String[]args){
inti,m,n,k=0,j=0;
int[]a=newint[8];
System.out.println("请输入8个数字");
Scannerreader=newScanner(System.in);
for(i=0;i<8;i++)
{
a[i]=reader.nextInt();
}
intmax=a[0],min=a[0];
for(i=1;i<8;i++)
{
if(a[i]>max)
{
max=a[i];
k=i;