《Java程序设计》上机实验
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
---
班级号 _学号 _姓名 _题号 .java(多文件应压缩为rar):
实验 1: 熟悉上机环境,编写并运行简单的java 程序( 3 学时)
实验目的
(1)熟悉 Java 程序开发环境 J2SDK+JCreator的安装及使用
(2)熟悉 Java Application 和 Applet 程序的结构及开发步骤
(3)熟练掌握 if 语句的使用
(4)掌握 Math.sqrt()等常用数学函数的用法
(5)熟悉 System.out.print()的用法
实验内容及要求
按Java Application 和 Applet 两种方式分别编写程序,求一元二次方程
ax2+bx+c=0 的根(系数在程序中给定),并输出。
思考并验证
(1)分别给定以下几组系数,给出输出结果a=1,
b=5, c=3
a=4, b=4, c=1
a=2, b=3, c=2:+ i + i
(2)如果程序的 public 类的类名和源文件的文件名不一样会有什么问题?
(3)将类的 public 修饰去掉是否可行?接着再将类名换为其它是否可行?这说明了什么 ?
(4)将程序中 main 前面的 public 去掉,重新编译执行你的程序,你看到了什么信息?
(5)将程序中 main 前面的 static 去掉,重新编译执行你的程序,你看到了什么信息?为
什么?
(6)本次上机中,你还遇到了什么问题,是如何解决的?
第1 页
班级号 _学号 _姓名 _题号 .java(多文件应压缩为rar):
实验 2:控制流程1(3 学时 )
实验目的
(1)进一步熟悉使用 if 语句
(2)掌握循环语句实现循环的方法
实验内容及要求
输出时,只使用下面的语句:
System.out.print(“”); //输出一个空格,并且不换行System.out.print(“*”); //输出一个字符’*’,并且不换行System.out.print(“+”); //输出一个字符’+’,并且不换行System.out.println(“*”;) // 输出一个字符’*’,并换行
编写程序输出(注:在图形的中心处有一个加号’+’):
*
* * *
*****
***+***
*****
* * *
*
思考并验证
下面程序片段给出了从键盘输入一个整数的方法:
import java.io.*;
InputStreamReader ir;
BufferedReader in;
ir=new InputStreamReader(System.in);
in=new BufferedReader (ir);
try {String s=in.readLine();
int i=Integer.parseInt(s);//转换成整形
第2 页
catch(IOException e){}
(1)如何修改程序,使得输出的图形可以很方便的在水平方向上移动?
(2)如何修改你的程序,按输入行数 n(为奇数 )输出图形?
选做:编程求支付方法的种数:取 1 元, 2 元, 5 元纸币 10 张,付给 18 元,有几种办法?
班级号 _学号 _姓名 _题号 .java(多文件应压缩为rar):
实验 3:控制流程2(3 学时 )
实验目的
(1)掌握数据类型的含义
(2)掌握 break 语句的使用
(3)掌握用三种循环语句实现循环以及循环嵌套的方法
实验内容及要求
编程,计算 11+22+ 33+⋯⋯ +66
思考并验证
(1)将内层循环改为另一种循环语句,比较哪种循环语句更适用于本程序?
(2)修改程序使之计算 11+22+33+⋯⋯ +2020,你的程序能得出正确结果吗?若不能,
应如何修改?
(3)考虑如何通过使用
break
语句修改这个程序,求出最大值,使得1+22
n 1
+⋯+n n小于等于 long 数据类型所能表示的最大值(即 Long.MAX_V ALUE ),并给出11+22+⋯+n n的确切值。
选做:求有几组和为 1000 的连续正整数,并输出这些整数。
---
班级号 _学号 _姓名 _题号 .java(多文件应压缩为rar):
实验 4: 类和对象(数组)( 3 学时)
实验目的
(1)掌握 Java 语言中类和对象的基本概念
(2)掌握 Java 程序设计中类和对象的定义及使用
(3)学习使用数组,掌握数组的初始化方法及数组元素的引用
实验内容及要求
编程,求解和为15 的棋盘游戏问题。要求将从 1
27 6
到 9 的九个数填入 3×3 的棋盘中,使得各行、各列以及
9 5 1
两个对角线上的三个数之和均为15,并打印出结果。如
4 3 8
左图。
思考并验证
(1)在程序中,你用到了数组了吗,使用的是几维数组?如果没有使用,在程序中该如何
使用数组?它给编程带来了什么好处?
(2)编程思路:
(3)在程序中,你定义了哪些类,它们分别具有什么含义?
(4)在程序中,你是否生成了自己定义类的对象?如果要求不可以生成类的对象实例,程
序应如何修改?