java实验报告.docx
- 文档编号:6228865
- 上传时间:2023-01-04
- 格式:DOCX
- 页数:36
- 大小:232.84KB
java实验报告.docx
《java实验报告.docx》由会员分享,可在线阅读,更多相关《java实验报告.docx(36页珍藏版)》请在冰豆网上搜索。
java实验报告
(java实验报告)
系别
电子信息系
专业
计算机科学与技术
班级学号
4080116
姓名
翟峰
实验一 JDK开发工具
一、实验目的
1.熟悉JDK开发环境。
2.熟悉EditPlus编辑器的使用。
3.掌握JavaApplication的程序结构和开发过程。
4.了解JavaApplet的功能与程序结构。
二、实验内容
1.JDK开发环境
(1)JDK1.2.1开发环境安装在“C:
\JDK1.2.1\”目录下。
(2)设置环境变量PATH和CLASSPATH(如果在autoexec.bat中没有进行设置)。
进入命令行(MS-DOS)方式,进行如下设置:
SETPATH=C:
\JDK1.2.1\BIN;%PATH%
SETCLASSPATH=.;%CLASSPATH%
2.EditPlus编辑器
(1)单击“开始”菜单,选择“程序”,选择“EditPlus”,单击“EditPlus”项。
(2)在“File”菜单中选择“New””建立新文件;“Open”打开已存在的文件;“Save”保存文件;“Close”关闭文件。
(3)在“Edit”菜单中选择“Undo”取消上次操作;“Redo”重复上次操作;“Cut”块剪切;“Copy”块复制;“Paste”块粘贴;“Delete”块删除。
(4)在“Search”菜单中选择“Find”查找;“Change”查找并替换。
3.掌握JavaApplication程序开发过程
(1)打开EditPlus编辑器。
(2)键入如下程序:
importjava.io.*;
publicclassHelloWorld1{
publicstaticvoidmain(Stringarg[]){
System.out.println("HelloWorld!
");
}
}
(3)检查无误后(注意大小写)保存文件。
可将文件保存在“D:
\Java\”目录中,注意文件名为HelloWorld1.java。
(4)进入命令行(MS-DOS)方式,设定当前目录为“D:
\Java\”,运行Java编译器:
D:
\Java>javacHelloWorld1.java
(5)如果输出错误信息,则根据错误信息提示的错误所在行返回EditPlus编辑器进行修改。
常见错误是类名与文件名不一致、当前目录中没有所需源程序、标点符号全角等。
如果没有输出任何信息或者出现“deprecation”警告,则认为编译成功,此时会在当前目录中生成HelloWorld1.class文件。
(6)利用Java解释器运行这个JavaApplication程序,并查看运行结果。
D:
\Java>javaHelloWorld1
三、思考题
1.什么是Java虚拟机?
它的作用是什么?
答:
Java虚拟机(JavaVirtualMachine,简称JVM)是一种假想的计算机。
从结构上看,它由抽象的指令集、寄存器组、类文件格式规定、堆栈、内存垃圾收集器和存储区六个部件组成。
它可以在任何平台上都提供给编译程序一个的共同的接口。
编译程序只需要面向虚拟机,生成虚拟机能够理解的代码,然后由解释器来将虚拟机代码转换为特定系统的机器码执行。
2.JavaApplication程序与JavaApplet程序的不同之处有那些?
答:
前者是普通应用程序,不依赖于其他程序。
applet的功能主要是在网页中显示数据和用户交互,网页上运行的小应用程序,必须依赖于浏览器才能运行,就同时也需要java类库支持。
实验二 基本输入输出
一、实验目的
1.掌握标准输入输出处理。
2.掌握BufferedReader类的使用方法。
二、实验内容
1.运行下面的程序,掌握JavaApplication标准输入输出。
importjava.io.*;
publicclassSimpleCharInOut{
publicstaticvoidmain(Stringarg[]){
charc='';
System.out.print("Enteracharacterplease:
");
try{
c=(char)System.in.read();
}catch(IOExceptione){};
System.out.println("You'reenteredcharacter"+c);
}
}
2.运行下面的程序,掌握BufferedReader类的使用方法。
importjava.io.*;
publicclassa{
publicstaticvoidmain(Stringargs[])throwsIOException{
inti;
floatf,r;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.print("inputi:
");
i=Integer.parseInt(din.readLine());
System.out.print("inputf:
");
f=Float.parseFloat(din.readLine());
r=i+f;
System.out.println(i+"+"+f+"="+r);
}
}
三、思考题
1.使用BufferedReader类从键盘接收一个整数和一个实数,计算它们的和,然后在屏幕上输出。
答:
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
inti;
floatf;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
i=Integer.parseInt(din.readLine());
f=Float.parseFloat(din.readLine());
System.out.println(i+f);
}
}
2.本实验的实验内容1中为什么要使用try-catch语句?
答:
使从键盘键入字符c的值。
实验三 Java语言基础
一、实验目的
1.掌握标识符的定义规则。
2.掌握表达式的组成。
3.掌握各种数据类型及其使用方法。
4.理解定义变量的作用,掌握定义变量的方法。
5.掌握各种运算符的使用及其优先级控制。
二、实验内容
1.运行下面的程序,掌握变量定义与数据类型
2.运行下面的程序,掌握算术运算。
3.运行下面的程序,掌握关系运算与逻辑运算
三、思考题
1.Java运算符的优先级与结合性是怎样的?
答:
同一优先级的运算符,运算次序由结合方向决定。
不同的如课本表给出
2.分析本实验的实验内容2中的语句
intj=i++;
intk=++i;
的执行过程。
答:
第一行是先将i的值赋给j,然后i自加1;第二行是i先自加1,然后将i赋给k。
3.分析本实验的实验内容3中的语句d=(f!
=0&&a/f>5);和语句d=(f!
=0&a/f>5);有什么区别?
答:
若判定的前一部分为假,前者还要继续判断,后者则结束判断得出结果为假。
实验四 顺序结构
一、实验目的
1.理解定义变量的作用,掌握定义变量的方法。
2.掌握顺序结构程序控制。
3.掌握算法与程序设计的基本方法。
二、实验内容
1.已知半径r=5,求圆的面积
。
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
intr=5;
System.out.println(3.14*r*r);
//TODOAuto-generatedmethodstub
}
}
2.已知半径r=5,求球的体积
。
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args){
intr=5;
System.out.println(4.0/3.0*r*r*r*3.14);
//TODOAuto-generatedmethodstub
}
}
3.用户输入圆的半径r,求圆的面积。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
intr=5;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.print("inputr:
");
r=Integer.parseInt(din.readLine());
System.out.println(3.14*r*r);
//TODOAuto-generatedmethodstub
}
}
4.用户输入球的半径r,求球的体积。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
intr=5;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.print("inputr:
");
r=Integer.parseInt(din.readLine());
System.out.println(4.0/3.0*3.14*r*r*r);
//TODOAuto-generatedmethodstub
}
}
5.已知半径r=5,高h=10求圆柱的表面积。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
intr=5;
inth=10;
System.out.println(3.14*r*r*2.0+10.0*r*2.0*3.14);
//TODOAuto-generatedmethodstub
}
}
6.已知半径r=5,高h=10求圆柱的体积。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
intr=5;
inth=10;
System.out.println(3.14*r*r*10.0);
//TODOAuto-generatedmethodstub
}
}
7.已知三角形三条边长为3,4,5求面积。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
inta=3,b=4,c=5;
floatd;
d=(a+b+c)/2;
doublee;
e=d*(d-a)*(d-b)*(d-c);
System.out.println(Math.sqrt(e));
//TODOAuto-generatedmethodstub
}
8.已知注水管需要3小时注满水,排水管需要5小时排空,同时打开,问多长时间注满水?
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
doublea,b;
a=3.0;
b=5.0;
System.out.println(1/(1/a-1/b));
//TODOAuto-generatedmethodstub
}
}
9.输入注水管单独注满水时间,排水管单独排空水时间,问:
同时打开,多长时间注满水?
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
floata,b;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.print("inputa:
");
a=Float.parseFloat(din.readLine());
System.out.print("inputb:
");
b=Float.parseFloat(din.readLine());
System.out.println(1/(1/a-1/b));
//TODOAuto-generatedmethodstub
}
}
10.同一个笼子里,有一些鸡和兔子,如果这些鸡和兔子一共有40个头,100只脚,请问笼内有鸡和兔各多少只?
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
inta,b;
inthen,rabbit;
for(a=1;a<40;a++){
b=40-a;
if((2*a+4*b)==100)
{hen=a;
rabbit=b;
System.out.println("鸡的数量是"+hen);
System.out.println("兔的数量是"+rabbit);
}
}
}
三、思考题
1.定义变量的作用是什么?
答:
变量只有经过定义才能在程序中使用,即“先定义,后使用”。
2.算法的作用是什么?
答:
算法是程序的灵魂,数据加工的对象,语言的工具,变成需要采用合适的方法。
算法是解决“怎么做”和“做什么”的问题。
实验五 分支语句
一、实验目的
1.掌握if语句、if-else-if结构的使用。
2.掌握switch语句的使用。
二、实验内容
1.使用简单if语句编程,从键盘键入三个整数,然后按照从小到大的顺序将其输出。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
inta,b,c,t;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.println("inputa:
");
a=Integer.parseInt(din.readLine());
System.out.println("inputb:
");
b=Integer.parseInt(din.readLine());
System.out.println("inputc:
");
c=Integer.parseInt(din.readLine());
if(a>b){
if(b>c)
System.out.println("从小到大顺序为:
"+"c"+""+"b"+""+"a");
elseif((a>c)&&(c>b))
System.out.println("从小到大顺序为:
"+"b"+""+"c"+""+"a");
elseif(c>a)
System.out.println("从小到大顺序为:
"+"b"+""+"a"+""+"c");
}
else{
if(a>c)
System.out.println("从小到大顺序为:
"+"c"+""+"a"+""+"b");
elseif((b>c)&&(c>a))
System.out.println("从小到大顺序为:
"+"a"+""+"c"+""+"b");
elseif(c>b)
System.out.println("从小到大顺序为:
"+"a"+""+"b"+""+"c");
}
}
}
2.分别使用if-else-if语句和switch语句编程,确定某一月在哪个季节。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
inta;
BufferedReaderdin=newBufferedReader(newInputStreamReader(System.in));
System.out.print("inputa:
");
a=Integer.parseInt(din.readLine());
if((a>2)&&(a<6))
System.out.println("春");
elseif((a>5)&&(a<9))
System.out.println("夏");
elseif((a>8)&&(a<12))
System.out.println("秋");
elseif(((a>11)&&(a<13))||((a>0)&&(a<3)))
System.out.println("冬");
else
System.out.println("error");
}
}
三、思考题
1.使用if语句实现单分支、两分支和使用switch语句实现多分支的程序程序结构和流程分别是什么?
2.使用if语句和switch语句都可以实现多分支,它们之间的区别是什么?
答:
switch只能对确定值进行条件测试,而且仅限于证书或整数的子集,如果是范围测试或者浮点值的比较判断,则只能用嵌套的if。
如果是多个整数值的分支,则用switch比较简单和优雅。
如果不能switch解决,则可以用if嵌套语句解决。
3.编程输入学生的学习成绩的等级,给出相应的成绩范围。
设A级为85分以上(包括85分);B级为70分以上(包括70分);C级为60分以上(包括60分);D级为60分以下。
分别使用if语句和switch语句实现。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
chargrade='';
System.out.print("Enteracharacterplease:
");
try{
grade=(char)System.in.read();
}catch(IOExceptione){};
switch(grade){
case'A':
System.out.println(grade+"is85~100");
break;
case'B':
System.out.println(grade+"is70~84");
break;
case'C':
System.out.println(grade+"is60~69");
break;
case'D':
System.out.println(grade+"is<60");
break;
default:
System.out.println("inputerror");
}
}
}
4.编程输入学生的学习成绩的等级,给出该等级是否及格的信息。
A、B、C级为及格;D级为不及格。
分别使用if语句和switch语句实现。
importjava.io.*;
publicclassSyuan2{
/**
*@paramargs
*/
publicstaticvoidmain(String[]args)throwsIOException{
chargrade='';
System.out.print("Enteracharacterplease:
");
try{
grade=(char)System.in.read();
}catch(IOExceptione){};
switch(grade){
case'A':
case'B':
case'C':
System.out.println(grade+"is>=60");
break;
case'D':
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 实验 报告