1、甘肃政法学院本科生实验报告(一)姓名:俞晓学院:信息工程学院专业:信息管理与信息系统 班级:13级信管班 实验课程名称:JAVA SE课程实验 指导教师:李瑞生 教师实验成绩:实验日期: 2015 年 3 月 24 日开课时间: 2014-2015 学年 第二 学期甘肃政法学院实验管理中心印制实验题目Java SE开发环境与语言基础小组合作否姓名俞晓班级13级信管学 号201381020144一、实验目的1.熟悉Java开发环境JDK1.6,Eclipse的安装与配置。2.学会分别运用JDK1.6和Eclipse开发简单的Application和Applet程序。3.掌握Java的各种基本数据
2、类型的用法。4.掌握Java的控制语句。5.熟悉Java基本数据类型、数组、控制结构的用法。6.学会运用Java基本语法解决实际应用问题。二实验环境Windows7JDK1.6Eclipse三、实验内容与步骤第一部分 Java SE开发环境与语言基础1.JAVA开发环境配置与简单程序开发(1)下载并安装JDK1.6。(2)配置环境变量:SDK平台提供的Java编译器(javac.exe)和Java解释器(java.exe)位于Java安装目录的bin文件夹中,为了能在任何目录中使用编译器和解释器,应在系统特性中设置Path。鼠标右击“我的电脑”-选择“属性”-弹出“系统特性”对话框-单击“高级
3、选项”-点击“环境变量”,添加如下图所示的系统环境变量:JDK的安装目录的jre文件夹中包含着Java应用程序运行时所需要的Java类库,这些类库被包含在jrelib目录下的压缩文件rt.jar中 。因此,再添加如下图所示环境变量:(3)下载Eclipse,将其解压到某一目录下。使用时只需双击eclipse图标即可。(4)在记事本中编写简单的Application 程序,运用JDK命令方式在屏幕上打印输出“你好,很高兴学习Java”。(5) 在记事本中编写简单的Applet 程序,运用JDK命令方式在Java Applet中绘制一行文字:“这是一个Java Applet 程序”。2.Java
4、基本数据类型与控制语句(1)输出希腊字母表。public class GreekAlphabet public static void main (String args ) int startPosition=0,endPosition=0; char cStart=,cEnd=; startPosition=cStart; /cStart做int型转换据运算,并将结果赋值给startPosition endPosition=cEnd; /cEnd做int型转换运算,并将结果赋值给endPosition System.out.println(希腊字母在unicode表中的顺序位置:+(int
5、)cStart); System.out.println(希腊字母表:); for(int i=startPosition;i0 & number100000) /判断number在1至99999之间的条件 d5=number/10000; /计算number的最高位(万位)d5 d4=number%10000/1000; /计算number的千位d4 d3=number%1000/100; /计算number的百位d3 d2=number%100/10; d1=number%10; if(d5!=0) /判断number是5位数的条件 System.out.println(number+是5
6、位数); if(d1=d5&d2=d4) /判断number是回文数的条件 System.out.println(number+是回文数); else System.out.println(number+不是回文数); else if(d4!=0) /判断number是4位数的条件 System.out.println(number+是4位数); if(d1=d4&d2=d3) /判断number是回文数的条件码 System.out.println(number+是回文数); else System.out.println(number+不是回文数); else if(d3!=0) /判断n
7、umber是3位数的条件 System.out.println(number+是3位数); if(d3=d1) /判断number是回文数的条件 System.out.println(number+是回文数); else System.out.println(number+不是回文数); else if(d2!=0) System.out.println(number+是2位数); if(d1=d2) System.out.println(number+是回文数); else System.out.println(number+不是回文数); else if(d1!=0) System.out
8、.println(number+是1位数); System.out.println(number+是回文数); else System.out.printf(n%d不在1至99999之间,number); 运行结果如图所示:第二部分 JAVA语法应用1、 输出特殊偏旁的汉字public class InputChinese public static void main(String args) char ch=研,zifu=0; int p=22920,count=5,position=0; System.out.printf(输出%d个石字傍的汉字:n,count); for(char c
9、=ch;c=ch+count;c+) position=c; /c进行int型转换据运算,并将结果赋值给position System.out.printf(%c(%d),c,position); System.out.printf(n输出%d个女字傍的汉字:n,count); for(int n=p;n realNumber) /猜大了的条件代码 System.out.print(猜大了,再输入你的猜测:); yourGuess = reader.nextInt(); else if(yourGuess realNumber) /猜小了的条件代码 System.out.print(猜小了,再
10、输入你的猜测:); yourGuess = reader.nextInt(); System.out.println(猜对了!);运行结果如图所示:5、遍历与复制数组import java.util.Arrays;public class InputArray public static void main(String args) int a = 1,2,3,4,500,600,700,800; int b,c,d; System.out.println(Arrays.toString(a); b = Arrays.copyOf(a,a.length); System.out.println
11、(Arrays.toString(b); c =Arrays.copyOf(a,4);/Arrays调用copyOf方法复制数组a的前4个元素 System.out.println(Arrays.toString(c);/Arrays调用toString方法返回数组c的元素值的表示格式 d = Arrays.copyOfRange(a, a.length-4, 4);/Arrays调用copyOfRange方法复制数组a的后4个元素 System.out.println(Arrays.toString(d); cc.length-1 = -100; /将-100赋给数组c的最后一个元素 dd.
12、length-1 = -200; System.out.println(Arrays.toString(a);运行结果如图所示:6、输入产品的数量和单价import java.util.Scanner;public class InputData public static void main(String args) Scanner reader=new Scanner(System.in); int amount =0 ; float price=0,sum=0; System.out.println(输入产品数量(回车确认):); amount=reader.nextInt(); /从键
13、盘为amount赋值 System.out.println(输入产品单价(回车确认):); price=reader.nextFloat(); /从键盘为price赋值 sum = price*amount; System.out.printf(数量:%d,单价:%5.2f,总价值:%5.2f,amount,price,sum);运行结果如图所示:7、 从命令行接收a,b,c,求解a-b范围的素数,每输出c个素数就换行输出。import java.util.Scanner;public class GetPrime public static void main(String args) in
14、t a, b, c;System.out.println(依次输入要求范围的上下限和每行输出的个数:);Scanner reader=new Scanner(System.in);/ 读取命令行中的参数并把字符串类型转换为整型a =reader.nextInt();b =reader.nextInt();c =reader.nextInt();boolean flag;int m, p, count = 0;for (m = a; m = b; m+) flag = true;for (p = 2; p = m / 2; p+)if(m%p=0) flag = false;break;if (
15、flag) System.out.print(m + t);count+;if(count%c=0)/ 每行中只输出c个素数System.out.println(); 运行结果如图所示:8、 打印“魔方阵”:即方阵的每行、每列、每条对角线上数字之和均相等(读懂并验证)。public class Magics public static void main(String args) int i = 0;int j = 0;int m = 0;int n = 5;j = (n + 1) / 2 - 1;int a = new intnn;aij = +m;/ 第一个数在第一行正中while (m
16、1) i = i + 2;j = j - 1;if (i (n - 1)/ 超出方阵右边界,则新位置取应选行的最左一个位置j = j - n;aij = +m;for (i = 0; i n; i+) for (j = 0; j n; j+) System.out.print(aij+t);System.out.println();运行结果如图所示:10、 求矩阵的积(读懂并验证)public class MatrixDemo public static void main(String args) int a1 = 1, 2, 3 , 4, 5, 6 ;int b1 = 1, 2 , 3,
17、4 , 5, 6 ;int c1 = new int22;for (int row = 0; row 2; row+) for (int col = 0; col 2; col+) c1rowcol = 0;for (int k = 0; k 3; k+)c1rowcol += a1rowk * b1kcol;for (int row = 0; row 2; row+) for (int col = 0; col 2; col+)System.out.print( + c1rowcol);System.out.println();运行结果如图所示:四、实验过程与分析d = Arrays.copyOfRange(a, a.length-4, 4);/Arrays调用copyOfRange方法复制数组a的后4个元素 五、实验总结