学生实验报告册(理工类)课程名称:面向对象程序设计专业班级:16计算机科学与技术(专转本)学生学号:22 学生姓名:张义丹所属院部:计算机工程指导教师:刘晶20 16 ——20 17 学年第2 学期金陵科技学院教务处制实验报告书写要求实验报告上交电子稿,标题采用四号黑体,正文采用小四号宋体,单倍行距。
实验报告书写说明实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。
教师可根据学科特点和实验具体要求增加项目。
填写注意事项(1)细致观察,及时、准确、如实记录。
(2)准确说明,层次清晰。
(3)尽量采用专用术语来说明事物。
(4)外文、符号、公式要准确,应使用统一规定的名词和符号。
(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。
实验报告批改说明实验报告的批改要及时、认真、仔细,一律用红色笔批改。
实验报告的批改成绩采用五级记分制或百分制,按《金陵科技学院课堂教学实施细则》中作业批阅成绩评定要求执行。
实验项目名称:Java编程基础实验学时: 6同组学生姓名:————实验地点:工科楼A101 实验日期:实验成绩:批改教师:刘晶批改时间:实验1 Java编程基础一、实验目的和要求(1)熟练掌握及编写调试Java应用程序及Java小程序的方法;(2)熟练掌握Java应用程序的结构;(3)了解Java语言的特点,基本语句、运算符及表达式的使用方法;(4)熟练掌握常见数据类型的使用;(5)熟练掌握if-else、switch、while、do-while、for、continue、break、return语句的使用方法;(6)熟练掌握数组和字符串的使用;(7)调试程序要记录调试过程中出现的问题及解决办法;(8)编写程序要规范、正确,上机调试过程和结果要有记录,不断积累编程及调试经验;(9)做完实验后给出本实验的实验报告。
二、实验仪器和设备奔腾以上计算机,Windows 操作系统,装有和软件。
三、实验过程(1)分别使用JDK命令行和Eclipse编译运行Java应用程序;适当添加注释信息,通过javadoc生成注释文档;为主方法传递参数“Hello world”字符串,并输出,记录操作过程。
public class Hello{public static void main(String args[]){"Hello!");}}(2)分别使用JDK命令行和Eclipse编译Java Applet,并建立HTML文档运行该Applet。
压缩生成".jar"文件。
记录操作过程。
import .*;import class HelloApplet extends Applet{public void paint(Graphics g){;("Hello!",20,20);}}<html><applet code="" height=100 width=300></applet></html>(3) 根据变量score中存放的考试分数,输出对应的等级。
要求从键盘输入学生成绩,60分以下为D等;60~69为C等;70~89为B等;90~100为A等。
(4) 编写一个Java Application程序,输出区间[200,300]上的所有素数,将其用数组prime[]保存,并以每10个一行的形式显示运行结果。
(5)输出下列数字形式,要求用二维数组完成。
①n=40 0 0 00 1 1 10 1 2 20 1 2 3②n=411 2 11 2 3 2 11 2 3 4 3 2 1(6) 求二维数组的鞍点,即该位置上的元素在该行上最大,在列上最小。
也可能无鞍点。
(7) 分析下列程序的输出结果,掌握equals()方法和“= =”的区别。
class StringTest2{public static void main(String args[]) {String s1 = "This is the second string.";String s2 = "This is the second string.";String s3 = new String("This is the second string.");String s4 = new String(s1);String s5 = s1;boolean result121 = (s2);boolean result122 = s1 == s2;boolean result131 = (s3);boolean result132 = s1 == s3;boolean result141 = (s4);boolean result142 = s1 == s4;boolean result151 = (s5);boolean result152 = s1 == s5;"s1 equals s2= " +result121);"s1 == s2= " +result122);"s1 equals s3= " +result131);"s1 == s3= " +result132);"s1 equals s4= " +result141);"s1 == s4= " +result142);"s1 equals s5= " +result151);"s1 == s5= " +result152);}}(8) 判断回文字符串回文是一种“从前向后读”和“从后向前读”都相同的字符串。
如“rotor”是一个回文字符串。
程序中使用了两种算法来判断回文字符串:算法一:分别从前向后和从后向前依次获得原串str的一个字符ch1、ch2,比较ch1和ch2,如果不相等,则str肯定不是回文串,yes=false,立即退出循环:否则继续比较,直到字符全部比较完,yes的值仍为true,才能肯定str是回文串。
算法二:将原串str反转成temp串,再比较两串,如果相等则是回文字符串。
(9) 使用String类的compareTo(String s)方法,对以下字符串从小到大排序:“melon”,“apple”, “pear”, “banana”,显示输出排序结果。
要求:(1)编译调试程序之前应配置好环境变量;(2)要分别掌握用JDK命令行和Eclipse集成开发环境调试Java程序;(3)注意Java两大类程序:应用程序和小程序的区别。
程序清单:(建议程序中适当添加注释信息,增强可读性;较长程序可分栏书写,保证报告排版整洁美观。
)(1)主方法传递参数“Hello world”字符串,并输出public class Hello {public Hello(){"HelloWorld!");}public static void main(String args[]){new Hello();}}(2)Eclipse编译Java Appletimport .*;import class HelloApplet extends Applet {int height,width;public void init(){=100;=300;}public void paint(Graphics g){;("Hello!", 20, 20);}}(3)package b;import class Test {public static void main(String args[]){ int score;ength;j++){if(j<=i)num[i][j]=j+1;else{k--;num[i][j]=k;}" ");}}}}(6)public class test {public static void main(String[] args) { ength;j++)" ");}boolean find = false; ength;j++) ; public class SortString {public static void main(String[] args) {; class Ex1{public static void main(String args[ ]){try{BufferedReader strin=new BufferedReader(new InputStreamReader);arseInt(cl);System .out .print("请输入被除数:");cl=strin .readLine();int b=Integer .parseInt(cl);int c=b/a;System .out .println("商为:"+c);};public class Ex1 {public static void main(String args[ ]){try{BufferedReader strin=new BufferedReader(new InputStreamReader);arseInt(cl);System .out .print("请输入被除数:");cl=strin .readLine();int b=Integer .parseInt(cl);int c=b/a;System .out .println("商为:"+c);};public class Div {public static void main(String args[]) throws MyException{try{BufferedReader in = new BufferedReader(new InputStreamReader);"请输入实数除法运算的被除数:");String str = ();double a = (str);"请输入除数:");str = ();double b = (str);"商结果:"+division(a,b));}catch(ArithmeticException e1){"商结果:Infinity"+e1);"商结果:NaN"+e1);}catch(NumberFormatException e2){"异常:字符串不能转换成整数!"+e2);}catch(IOException e3){"异常:IO异常"+e3);}finally{"程序结束!");}}static double division(double a,double b)throws MyException{ if(a==100 && (b==4 || b==13))throw new MyException("不符规范");else return (a/b);}}四、实验结果与分析(程序运行结果及其分析)(1)去掉Man类的public修饰,程序运行不出来,提示缺少Man的公开方法。