java实验报告.docx
- 文档编号:11395792
- 上传时间:2023-05-31
- 格式:DOCX
- 页数:25
- 大小:327.85KB
java实验报告.docx
《java实验报告.docx》由会员分享,可在线阅读,更多相关《java实验报告.docx(25页珍藏版)》请在冰点文库上搜索。
java实验报告
学生学号
实验课成绩
武汉理工大学
学生实验报告书
课程名称JAVA语言程序设计
开课学院计算机科学与技术学院
指导老师
学生姓名
专业班级
2011—2012学年第1学期
实验课程名称:
Java语言程序设计
实验项目名称
JDK安装与配置、简单的程序编写
实验成绩
实验者
专业班级
组别
同组者
实验日期
第一部分:
实验分析与设计(可加页)
一、实验内容描述(问题域描述)
实验目的:
熟悉JDK的安装、配置和使用,掌握JavaApplication程序的基本结构。
实验内容:
(1)安装JDK,并练习设置JAVA_HOME、path和classpath环境变量;
(2)编写一个打印出”HelloWorld”的JavaApplication程序,并编译运行;
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,实验步骤等,用
硬件逻辑或者算法描述)
实验步骤:
1.在sun公司饿官网上现在jdk的安装程序.
2.将安装程序解压后安装在你想要安装的位置,并在doc环境下检查JDK是否安装成功.并点击我的电脑→属性→高级→环境变量设置JDK的JAVA-HOME、path和classpath.
3.打开eclipse开发环境,新建工程TEXT,创建一个package,命名为HelloWorld!
创建一个类HelloWorld。
在类中编写代码。
调试并运行。
算法描述:
packageHelloWorld;
publicclassHelloWorld{
publicstaticvoidmain(String[]args){
System。
out.println("Hello,World!
");
}
}
三、主要仪器设备及耗材
个人计算机
Eclipse开发环境
第二部分:
实验调试与结果分析(可加页)
一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)
因为程序比较的简单所以调试的过程中没有什么错误.
二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)
实验结果:
输出Hello,World!
三、实验小结、建议及体会
我在老师讲授这门课程的时候就学习了一部分java的基础知识,所以这个程序还是比较简单的。
我使用了eclipse集成开发环境,它可以帮助我们更快更方便的编写和运行java程序.输出“Hello,World!
”意味着一段完整的java程序编译运行成功。
这个程序告诉我们,在java里面,everythingisobject!
.java文件的名称必须是包含main方法的public类型的类。
实验课程名称:
Java语言程序设计
实验项目名称
Java类型、变量和表达式
实验成绩
实验者
专业班级
组别
同组者
实验日期
第一部分:
实验分析与设计(可加页)
一、实验内容描述(问题域描述)
实验目的:
熟悉Java的各种类型、掌握java的变量定义及表达式的运算等.
实验内容:
(1)编写一个程序计算长方形的面积和周长。
长方形的宽和高要求从键盘输入.
(2)尝试使用Math类提供的随机数生成方法,产生一个1~100的随机整数并输出。
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,实验步骤等,用
硬件逻辑或者算法描述)
算法描述:
(1)计算长方形周长和面积:
packagePerimeter;
importjava。
util。
*;
publicclassPerimeter{
publicstaticvoidmain(String[]args){
Scannerin=newScanner(System.in);
System。
out。
println(”计算长方形周长和面积!
");
System。
out。
println("请输入长方形的长:
”);
inta=in。
nextInt();
System.out。
println(”请输入长方形的宽:
”);
intb=in.nextInt();
System。
out。
println("周长="+(2*a+2*b));
System.out。
println("面积="+a*b);
}
}
(2)随机数:
packageSuiJiShu;
publicclassSuiJiShu{
publicstaticvoidmain(String[]args){
inti=(int)(Math。
random()*100)+1;
System.out.println("产生的随机数为:
”+i);
}
}
三、主要仪器设备及耗材
个人计算机
Eclipse开发环境
第二部分:
实验调试与结果分析(可加页)
一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现
的问题等)
随机数产生时没有考虑到math。
random产生的是0—1之间的数,但却不包含1,所以无法产生100.调试过程中发现问题,并在表达式后面加上1。
其他都没有什么错误。
二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和
结论等)
实验结果:
(1)计算长方形周长和面积:
(2)随机数:
三、实验小结、建议及体会
这是个比较简单的程序,主要练习类、变量的定义。
两个小程序中包含系统的内部类,scanner和math,scanner是用来输入的,math。
random用于产生0-1之间的随机数。
Java中这类库方法的定义有助于我们解决很多很常见的问题,节约了很多的时间。
Java中class和变量的定义主要注意标明变量的种类,不能使用java中默认的关键字,如for、int、do等等.Java中不能使用未初始化的变量,可以将声明放在代码中的任何位置。
平时要多多实践,在实践中才能发现更多的错误,学会更多的东西。
实验课程名称:
Java语言程序设计
实验项目名称
Java的流程控制
实验成绩
实验者
专业班级
组别
同组者
实验日期
第一部分:
实验分析与设计(可加页)
一、实验内容描述(问题域描述)
实验目的:
熟练掌握java的各种流程控制。
实验内容:
(1)编写一个程序实现将任意一个大于6的偶数表示成两个素数之和。
(2)编写一个程序实现输出任意四个数的中位数.例如:
四个数3、4、5、6的中位数为4.5,10、20、35、36的中位数27.5。
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,实验步骤等,用
硬件逻辑或者算法描述)
算法描述:
(1)素数
packageSuShu;
importjava。
util。
Scanner;
publicclassSuShu{
publicstaticvoidmain(Stringargs[]){
System。
out.println(”请输入一个大于6的偶数:
”);
Scannerin=newScanner(System.in);
intNumber=in.nextInt();
System.out.println(”将"+Number+”表示成两个素数的和:
”);
//找到比输入的数要小的素数
outer1:
for(inti=3;i〈=Number/2;i+=2){
//外层循环
for(intj=2;j
if(i%j==0)
continueouter1;
}
intAddend=Number—i;//以找到的素数为加数,求另一个加数
booleanT=true;//第二个加数是否为素数的标志
//判断另一个加数是否为素数
for(intk=2;k〈=Addend/2;k++){
if(Addend%k==0){
T=false;
break;
}
}
//输出结果
if(T){
System.out。
println(Number+"=”+i+”+"+Addend);
}
}
}
}
(2)中位数
packageZhongWeiShu;
importjava.util。
*;
publicclassZhongWeiShu{
publicstaticvoidmain(String[]args){
Scannerin=newScanner(System.in);
System.out。
println("求四个数的中位数!
”);
System.out。
println(”请输入四个数,以空格分隔:
”);
int[]a=newint[4];
for(inti=0;i〈4;i++){
a[i]=in.nextInt();
}
Arrays.sort(a);
doubleMiddle=(double)(a[1]+a[2])/2;
System。
out.println(”中位数为:
"+Middle);
}
}
三、主要仪器设备及耗材
个人计算机
Eclipse开发环境
第二部分:
实验调试与结果分析(可加页)
一、调试过程(包括调试方法描述、实验数据记录,实验现象记录,实验过程发现的问题等)
本实验的调试过程主要是提升程序的运行效率上。
在素数的实验中使用for循环时,并不是每个数都要计算.可以节约很多运行时间。
二、实验结果及分析(包括结果描述、实验现象分析、影响因素讨论、综合分析和结论等)
实验结果:
(1)素数
(2)中位数
三、实验小结、建议及体会
本次实验主要是练习java的流程控制。
实验中使用的到是for循环、跳转语句continue等。
这些都是常见的流程控制语句.我们在编写程序的过程中经常要使用到这些语句。
这些也是初学编程语言的人常常容易放的错误.在编写这类语句的时候,一定要考虑清楚如何准确控制,才能让程序准确高效的运行,得到自己想要的结果。
在这次实验中,我仔细考虑到了for循环的语句,并想办法提高了程序的执行效率。
实验课程名称:
Java语言程序设计
实验项目名称
Java的数组
实验成绩
实验者
专业班级
组别
同组者
实验日期
第一部分:
实验分析与设计(可加页)
一、实验内容描述(问题域描述)
实验目的:
熟练掌握java的一维、多维数组的使用。
实验内容:
(1)编写一个程序,生成一个10*10的二维随机整数数组,并将该数组的每
行最大值保存于一个一维数组中,将每列平均值保存于另外一个一维数组中并分别输出。
(2)编程输出杨辉三角的前10行。
(3)找出一个二维数组的鞍点,即该位置上的元素在该行上最大,在该列上
最小(注:
一个二维数组也可能没有这样的鞍点)。
二、实验基本原理与设计(包括实验方案设计,实验手段的确定,实验步骤等,用
硬件逻辑或者算法描述)
算法描述:
(1)二维随机数组
packageShuZu;
importjava.util。
*;
publicclassShuZu{
publicstaticvoidmain(String[]args){
int[][]a=newint[10][10];
for(inti=0;i<10;i++){
for(intj=0;j〈10;j++){
a[i][j]=(int)(Math.random()*100)+1;
}
}
System.out.println("10x10的二维随机数组:
”);
for(int[]row:
a){
for(intvalue:
row){
System。
out。
printf("%4d”,value);
}
System.out.println("”);
}
System.out.println(”\n每行的最大值、平均值分别为:
");
System。
out。
println(”\t最大值\t平均值");
for(intk=0;k<10;k++){
Arrays。
sort(a[k]);
int[]b=newint[10];
b[k]=a[k][9];//存放每行的最大值
double[]c=newdouble[10];//存放每行的平均值
for(intx=0;x<10;x++){
c[k]+=a[k][x];
}
c[k]=c[k]/10;
System。
out.printf(”第%2d行:
\t%d\t%。
2f\n”,k,b[k],c[k]);
}
}
}
(2)杨辉三角
packageYangHuiSanJiao;
importjava。
util。
Scanner;
publicclassYangHuiSanJiao{
publicstaticvoidmain(String[]args){
System.out。
print(”请输入需要计算的行数:
");
Scannerin=newScanner(System。
in);
finalintnum=in.nextInt();
int[][]a=getYangHuiTriangle(num);
for(inti=0;i for(intm=1;m<3*(num-i);m++){ System。 out。 print("”); } for(intj=0;j〈=i;j++){ System。 out.printf("%5d",a[i][j]); System。 out.print(""); } System。 out.println(); } } privatestaticint[][]getYangHuiTriangle(finalintnum){ int[][]a=newint[num][num]; for(inti=0;i length;i++){ a[i][0]=1; a[i][i]=1; } for(inti=1;i length;i++){ for(intj=1;j〈=i;j++){ a[i][j]=a[i-1][j-1]+a[i-1][j]; } } returna; } } (3)二维数组的鞍点 packageDort; importjava.util。 Scanner; publicclassDort{ publicstaticvoidmain(Stringargs[]){ System.out。 println("请输入数组大小: "); Scannerin=newScanner(System.in); intnum=in。 nextInt(); int[][]a=newint[num][num];//存放二维数组 //随机生成二维数组 for(inti=0;i〈num;i++){ for(intj=0;j a[i][j]=(int)(Math。 random()*100)+1; } } //输出二维数组 System。 out.println(num+"x"+num+"的二维随机数组: "); for(int[]row: a){ for(intvalue: row){ System.out.printf("%4d",value); } System。 out.println("”); } booleanfind=false;//找到鞍点标记 introw=0;//第1行下标 intmax=0;//记录当前行最大值的列下标 while(! find&&row length){ max=0;//初始设每行第1列值最大
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实验 报告