软件与微电子学院
实 验 告
(2017-2018第一学期)
课程名称:面向对象程序设计(JAVA)
班 级:
学 :
姓 名:
实验名称 |
Java运行环境的搭建以及Eclipse的开发环境的使用 |
专 业 |
软件工程 |
||
姓 名 |
|
学 |
|
班 级 |
|
- 实验目的:
握Eclipse集成开发环境的基本使用以及简单Java应用程序的编写
握java的基本语法
–数值计算
–循环
–跳转
–熟练开发环境
–eclipse
- 实验内容:
实验内容1
算两个整数相除,两种形式输出结果:
–相除的结果是商和余数
–相除的结果是以实数表示的值
–要求:
断分母不为0
实验内容2
算1+2+3+……100的和,三种方式实现:
–For循环
–While循环
–递归(选做)
实验内容3
建长度为20的double数组,存放n个人的身高
ouble[] heights = {165,160,170,…,….};
务为计算以下四个值:
–最大值(Max)
–最小值(Min)
–平均值(Mean)
–中值(Median)(选做)(中值也叫中位数,自己百度一下中值的定义)
- 实验设备及软件环境:
Microsoft Word
Eclipse
- 实验过程及结果:
实验内容1
代码:
package com.zrrd.zln;
import java.util.Scanner;
public class ShiYan {
public static void main(String[] args)
{ int a,b;
float c;
Scanner in=new Scanner(System.in);
a=in.nextInt();
b=in.nextInt();
if(b!=0)
{ System.out.println(“商:”+a/b+” 余数;”+a%b);
c=(float)a/(float)b;
System.out.println(“实数:”+c);}
else
System.out.println(“分母不能为零”); }
}
运行结果截图:
实验内容2
For循环
代码:
package com.zrrd.zln;
import java.util.Scanner;
public class ShiYan {
public static void main(String[] args)
{
{ int a,sum1=0;
for(a=1;a<101;a++)
sum1+=a;
System.out.println(“for循环;”+sum1); } }
}
实验结果截图
While循环
代码:
package com.zrrd.zln;
import java.util.Scanner;
public class ShiYan {
public static void main(String[] args)
{
{ int b=1,sum2=0;
while(b<101)
{
sum2+=b;
b++; }
System.out.println(“while循环:”+sum2);
}
}
}
实验结果截图:
实验内容3:
代码:
package com.zrrd.zln;
import java.util.Scanner;
public class ShiYan {
public static void main(String[] args)
{
float hight[];
hight=new float[20];
Scanner in=new Scanner(System.in);
System.out.println(“输入人数(最多20人)”);
int i,j,n=in.nextInt();
float max=0,min=0,mean,sum=0,t,med;
for(i=0;i<n;i++)
{ hight[i]=in.nextFloat();
sum+=hight[i]; }
for(i=0;i<n-1;i++)
{ for(j=i+1;j<n;j++)
{ if(hight[i]>hight[j])
{ t=hight[i];
hight[i]=hight[j];
hight[j]=t;
}
}
}
min=hight[0];
max=hight[n-1];
mean=sum/n;
if(n%2!=0)
{ med=hight[n/2];
}
else
{ med=(hight[n/2]+hight[n/2-1])/2; }
System.out.println(“最大值;”+max+” 最小值:”+min+” 平均值;”+mean+” 中位数:”+med); }
}
实验结果截图:
- 总结:
在这次实验中,因为最初接触eclipse的编译器,所以对编译环境的调试和建立程序和包就遇到了问题,最后通过询问老师和同学,成功的熟悉了编译器,录入代码的过程中,首先是思维问题,对于老师发布下来的问题,我进行了思路的梳理,这个过程就像是曾经学的C,C++等语言解题的过程,让我意识到了各类语言的互通性,而后通过各类的调试,出现结果的一刻,会感到莫大的成就感,也许学习的过程就是这样,总会有各类的问题,需要不断地去解决,最后才能获得结果
实验成绩: 指导教师: 年 月 日
实验名称 |
面向对象Java语言实验二 |
专 业 |
软件工程 |
||
姓 名 |
|
学 |
|
班 级 |
|
一、实验目的:
学习使用类来封装对象的属性和功能
掌握类变量与实例变量、类方法与实例方法的区别
掌握package和import语句
掌握继承的代码复用方式
二、实验内容:
内容1:编写一个Java应用程序,其中有包含5个类:
Shape(形状)
Triangle(三角形)
Square(正方形)
Rectangle(长方形)
Circle(圆形)
要求:
设计成员变量,考虑四中图形的基本要素和满足的条件,设计三个方法,计算图形的周长,计算图形的面积,根据面积比较图形的大小
public int compareTo(Shape shape)
内容2(选做)
百度一下设计模式中的工厂模式
自己实现一个工厂模式,用于创建Triangle、Square、Rectangle、Circle四个字类的对象
百度一下Random类的用法,使用Random来随机创建四个图形的对象,思路如下:
随机生成0~3 4个数字
如生成的数字是0,则创建Triangle
如生成的数字是1,则创建Square
如生成的数字是2,则创建Rectangle
如生成的数字是3,则创建Circle
三、实验设备及软件环境:
Microsoft Word
Eclipse
四、实验过程及结果:
内容1:
class Trangle
{
double sideA,sideB,sideC,area,length;
boolean boo;
public Trangle(double a,double b,double c)
{
sideA=a;
sideB=b;
sideC=c;
// 参数a, b, c分别赋值给sideA, sideB, sideC
if((a+b)>c&&(a+c)>b&&(b+c)>a) //a, b, c构成三角形的条件表达式
{
boo=true;// 给boo赋值
}
else
{
boo=false;// 给boo赋值
}
}
double getLength()
{
length=sideA+sideB+sideC;// 方法体,要求计算出length的值并返回
}
public double getArea()
{
if(boo)
{
double p=(sideA+sideB+sideC)/2.0;
area=Math.sqrt(p*(p–sideA)*(p–sideB)*(p–sideC)) ;
return area;
}
else
{
System.out.println(“不是一个三角形,不能计算面积”);
return 0;
}
}
public void setABC(double a,double b,double c)
{
sideA=a;
sideB=b;
sideC=c;
// 参数a, b, c分别赋值给sideA, sideB, sideC
if((a+b>c)&&(a+c>b)&&(b+c)>a) // a, b, c构成三角形的条件表达式
{
boo=true;//给boo赋值。
}
else
{
boo=false;// 给boo赋值
}
}
}
class Lader
{
double above,bottom,height,area;
Lader(double a,double b,double h)
{
above=a;
bottom=b;
height=h;// 方法体
}
double getArea( )
{
area=(above+bottom)*height/2.0;
&nbs
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!