实验指导书(实验报告书写规范)1.拿到实验报告后,先填写封面:2012-2013学年第一学期实验室名称:兰州工业学院计算机一体化教室课程名称:《Java语言程序设计》指导教师:杜叔强学号:(只写后2位)2.接着填写目录,即实验项目名称3.下面是每次做实验后应完成的内容:每一页正文最上边写上实验时间:(例如:2011-9-22)同组者:(这个不用填写)实验题目:一、实验目的二、实验环境:JDK三、实验内容四、实验结果说明:实验结果中给出主要代码及运行数据和结果,每次实验报告3-4页五、实验总结:4.其他要求每个实验项目另起一页!!!!实验报告册使用黄色厚本规格!!!(学校规定,十个学时以上实验用厚本,十个学时以内用薄本。
)实验一熟悉Java运行环境一、实验目的1.熟悉JDK开发环境2.了解Java Application的程序结构和开发过程3.了解Java Applet程序的开发过程并编写第一个Java Applet程序4.学习编写简单的HTML文件配合Java Applet使用二、实验环境:JDK1.5三、实验内容四、实验结果五、实验总结:实验二 Java的基本数据类型一、实验目的1.熟悉Java的基本数据类型;2.会准确操作字符型类型,并掌握强制转换的操作;二、实验环境与地点1.实验环境:JDK1.6+Ultraedit2.实验地点:软件工程系一体化教室三、实验内容与步骤1. 定义一个类,类中包含主程序,在主程序中进行如下定义:(1)定义一个常量,名称为MAXVALUE,赋值为1000;(2)定义一个变量,名称为maxValue,赋值为500;2. System.out.println(“你好”);可输出字符串,也可以使用System.out.println( )输出变量或表达式的值,只需使用并置符号“+”将变量、表达式或一个常数值与一个字符串并置即可,如: System.out.println(“”+x);System.out.println(“:”+123+“大于”+122);等。
上机调试下列程序,注意观察结果,特别注意System.out.print( )和System.out.println( )的区别。
public class OutputData{public static void main(String args[]){int x=234,y=432;System.out.println(x+"<"+(2*x));System.out.print("我输出结果后不回车");System.out.println("我输出结果后自动回车到下一行");System.out.println("x+y= "+(x+y));System.out.println(" "+x+y+"=234432");}}3. 定义一个类,其中包含主程序,在主程序中进行如下操作:(1)输出‘h’+1;(2)输出‘7’+1;4. 定义一个类,在主程序中加入如下语句:int x = 8;byte b = 127;b = x;改正其中的错误。
四、实验总结与分析1.2.3.实验三选择结构程序设计一、实验目的1.熟悉JDK开发环境2.进一步了解Java Application的程序结构和开发过程3.掌握选择结构程序设计二、实验环境:JDK1.5三、实验内容编写程序,在主类中完成以下功能。
提示:输入数据可以用java.util.Scanner包中的Scanner(中文意思是扫描仪)类,用法如下例:import java.util.Scanner;//必须要先导入java.util.Scanner包public class Test {public static void main(String[] args) {Scanner sc = new Scanner(System.in);//创建Scanner类的对象scSystem.out.println("请输入一个整数:");//输出提示信息int i = sc.nextInt();//sc对象的nextInt()方法可得到整数System.out.println(i);}}这个例子就可以得到一个整型的数据,然后输出。
1.从键盘上输入3个整数分别存入变量a,b,c,输出其中的最大值。
2.输入一个整数,打印出它是奇数还是偶数。
3.计算如下分段函数值:具体要求如下:①用if语句实现分支。
自变量x与函数值均用单精度类型。
②自变量x由键盘输入,且输入前要有提示。
结果的输出采用以下形式:x=具体值,f(x)=具体值③请编写程序并上机调试。
分别输入x=-5.0,-3.0,1.0,2.0,2.5,3.0,5.0,运行该程序,写出运行结果。
4.输入一个年份,判断是不是闰年。
闰年的条件有两个:①能被4整除,但不能被100整除;②能被400整除。
5.由键盘输入3个整数,判断以此3个数为边长的三角形属于什么类型(不等边、等腰、等边或不能构成三角形)。
请编写程序并上机调试。
6.根据百分制分数决定成绩等级如下:①80分(含)以上为A级。
②70分(含)以上且80分以下为B级。
③60分(含)以上且70分以下为C级。
④60分以下为D级。
用多分支语句if-else if和switch两种方法编写程序,输入一个百分制分数,输出相应的等级。
请编写程序并上机调试。
7.由键盘输入3个整数,按降序打印这三个数。
请编写程序并上机调试。
四、实验结果五、实验总结:实 验 四 循环结构程序设计一、实验目的1. 掌握在设计条件型循环结构时,如何正确地设定循环条件。
2. 掌握如何正确地控制计数型循环结构的循环次数。
3. 练习并掌握选择结构与循环结构的嵌套、多重循环的应用。
4. 掌握在程序设计中用循环的方法实现一些常用算法,加强调试程序的能力二、实验环境:JDK1.5三、实验内容编写程序,在主类中完成以下功能。
1. 分别用while 循环和for 循环计算:1+2+3+…+100=?要求:写出程序并上机查看运行结果。
2. 计算分数序列 ,1321,813,58,35,23,12 前20项之和。
要求:写出程序并上机查看运行结果。
3. 求两个正整数的最大公约数和最小公倍数。
分析:求两个正整数的最大公约数采用辗转相除法:① 输入正整数m 和n ;② 如果n ≠0,则求r=m%n ,然后m=n ,n=r ;重复此操作直到n=0;③ 如果n=0,则此时m 就是最大公约数,而最小公倍数是这两数之积除以这两数的最大公约数得到的商。
要求:写出程序并上机查看运行结果。
4. 在屏幕上打印出下三角的乘法表,如图3.1。
试着完成下面的程序,并查看运行结果是否正确。
图3.1 乘法表5. 在屏幕上打印出1000以内的素数,每行打印出10个,并统计个数。
要求:写出程序并上机查看运行结果。
6. 打印出图6.2所示图案。
要求:写出程序并上机查看运行结果。
图6.2 *号图案7. 编程把下列数列延长到第50项:1、2、5、10、21、42、85、170、341、682、........屏幕输出时要求格式对齐。
要求:上机运行并写出运行结果。
8.求解1000以内的完数。
如果一个数恰好等于它的所有因子(包括1但不包括自身)之和,例如:6的因子为1,2,3,且1+2+3=6,因此6是一个“完数”。
计算并输出1000以内的所有“完数”之和,输出形式为:完数1+完数2+…=和值。
9.百钱买百鸡:鸡翁一,值钱五,鸡母一,值钱三,鸡雏三,值钱一,百钱买百鸡,问翁、母、雏各几何?10.三对情侣参加婚礼,三个新郎为A、B、C,三个新娘为X、Y、Z。
有人不知道谁和谁结婚,于是询问了六位新人中的三位,但听到的回答是这样的:A说他将和X 结婚;X说她的未婚夫是C;C说他将和Z结婚。
这人听后知道他们在开玩笑,全是假话。
请编写程序找出谁将和谁结婚。
四、实验结果五、实验总结:实验五类与对象的设计一、实验目的1.理解面向过程与面向对象区别2.理解面向对象的三大特征3.掌握类声明的方法4.掌握构造方法5.掌握对象的创建方法与创建机制6.掌握成员变量、类变量和局部变量区别7.掌握成员方法与类方法区别8.掌握函数的重载9.掌握4种访问修饰符的区别二、实验环境:JDK1.5三、实验内容1.创建猴子类。
具体要求如下:1)编写一个类Monkey,用来表示猴子类;2)给Monkey类确定添加4个属性:3个实例成员变量(名字、体重、年龄)、1个静态成员变量(爱好:默认值为:吃香蕉);3)添加默认构造方法和有参构造方法(3个参数,分别给名字、体重和年龄赋初始值)4)编写展示猴子能够爬树(climbTree)的方法――提供两个参数传入:分别代码猴子的名字(name)和爬树的高度(height)(方法内只需打印猴子的”名字+会爬树,能爬+高度”)5)测试:在main方法中创建两个猴子对象monkey1(甲、50、3)和monkey2(乙、45、2),monkey1使用默认构造方法创建,monkey2使用有参构造方法创建。
分别打印出monkey1和monkey2的名字、体重、年龄和爱好。
并调用monkey1和monkey2的爬树方法。
2.创建矩形Rectangle类。
具体要求如下:1)创建一个Rectangle类;2)创建属性:两个double成员变量:width和height。
3)创建方法:计算矩形的周长getLength()和面积getArea()。
4)测试:创建Rectangle对象,并给两个成员变量赋值,调用周长和面积的方法,输出周长和面积。
3.练习static修饰符的使用1) 编写类Teacher;2) 属性:教师的课时数量和计算课时的系数(所有教师的课时系数相同,使用static修饰),均为double类型;3) 方法:courseCompute(),可计算教师的当量课时(=课时量*系数),返回值类型为double。
4) 编写一个测试类进行测试,创建两个教师对象,分别具有不同的课时数量,课时系数为1.2,输出计算后的两位老师的当量课时。
5) 将系数修改后,输出修改后的当量课时。
4.一个Fan有自己的品牌,其调速旋钮speed可以调整Fan的速度(档级在0、1、2、3范围内),通电开关可以改变电扇状态(通电表示工作就绪或者工作,断电表示停止工作)请仔细分析并提供Fan类的定义。
并编写程序对其进行测试。
具体要求如下:1)表示该类对象的状态可以用品牌(brand,可以用字符串型表示,因为品牌通常都是多个字符组成的)、工作状态(status,用来反映一个电风扇是否处于通电就绪ready、正在转动working或者静止stop)、当前的速度(speed,可以用数值型表示);2)用构造函数可以创建一个电风扇对象,指定其品牌就可以了,一个电风扇的初始状态可以是静止,而且初始速度为0,分析为什么不适宜直接通过构造函数的形式参数来指定初始状态和速度;3)考虑是否应该给该类提供如下的方法,重点考虑每个动作导致的状态变化,形成代码逻辑;●模拟一个开关动作,提供一个方法来表示电风扇的开与关●通过加速和减速两个方法来调整速度,当速度超出极限(0或3),向控制台输出一条告警信息作为提示,并且不执行该动作。