ImageVerifierCode 换一换
格式:DOCX , 页数:41 ,大小:121.73KB ,
资源ID:5258817      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/5258817.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(精java实验练习报告答案.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

精java实验练习报告答案.docx

1、精java实验练习报告答案面向对象程序设计(Java)实验报告姓名_学号_实验二 Java基本编程能力一、实验目的与要求(1)掌握Java常用编程工具的使用;(2)掌握Java语言的基本语法,包括:标识符、简单类型、表达式及运算、选择结构、循环结构、数组、输入输出。二、实验原理标识符:Java语言使用的是Unicode字符集,使用2个字节表示一个符号,总共可描述65536个不同的符号,基本上可以描述世界上所有国家的文字。因此,除可以使用通常的方式来命名标识符之外,也可以使用中文、日文、朝鲜文作为标识符。但是,对于程序员来说:最好还是使用遵从一般规范。在Java语言中规定了各基本类型的数据所占的

2、固定字节数。分别如下:在Java中int 类型的占4个字节,char类型的占2个字节,long-8, float-4;double-8与C语言不同的是,Java语言中增加了boolean类型,即逻辑类型(布尔类型),其变量只有2个常量值,绝对不能与C中的非0就是真、0就是假混淆。运算规则、选择结构、循环结构与C语言基本一致,不再赘述了。数组属于特殊的类,每个数组都是一个对象。对象都是指针。一维数组的声明、定义、赋值(创建数组),访问(包括使用foreach方式,Java中新增加的遍历方式),数组的元素个数三、预习与准备掌握基本的概念及原理,明确实验任务和目的,准备实验的源代码。四、实验内容7、

3、9、10、25、26、30、38、40、(41可搜索、考虑)五、实验过程7输入三个数,求三个数中的最大值:源代码如下:package com.demo;import java.util.Scanner;publicclass Demo01 publicstaticvoid main(String args) Scanner q = new Scanner(System.in); / 输入三个数到数组 int a = newint3; System.out.println(请输入三个数:); for (int i = 0; i 3; i+) ai = q.nextInt(); / 对输入的数求最

4、大值 int max = a0; for (int i = 0; i a.length; i+) if (max ai) max = ai; System.out.println(最大值为 + max); 运行结果截图:9判断输入的数时正数、负数还是零,例如输入-100,输出“负数”,输入100,输出“正数”,输入0,输出“零”:源程序如下:package com.demo;import java.util.Scanner;publicclass Demo01 publicstaticvoid main(String args) Scanner scanner = new Scanner(Sy

5、stem.in); System.out.println(请输入您要判断的数;); int input = scanner.nextInt(); if (input 0) System.out.println(负数); elseif (input = 0) System.out.println(这个数是 0); else System.out.println(正数 ); 运行结果截图如下:10根据学生成绩(成绩在0-100之间)输出等级,分别用if和switch实现。成绩和等级的对应关系如下:60以下:不及格6079:及格8090:良好90100:优秀源程序如下:package com.dem

6、o;import java.util.Scanner;publicclass Demo01 publicstaticvoid main(String args) System.out.print(请输入学生的成绩:); Scanner score = new Scanner(System.in); int scores = score.nextInt(); int a = scores / 10; switch (a) case 7: System.out.println(及格); break; case 8: System.out.println(良好); break; case 9: Sy

7、stem.out.println(优秀); break; default: System.out.println(不及格); 运行结果截图如下:38 从键盘输入10个数字,求这10个数字的和、平均值、最大值和最小值。原程序如下:package com.demo;import java.util.*;publicclass Demo01 publicstaticvoid main(String args) Scanner s = new Scanner(System.in); int b = newint10; System.out.print(Please input 10个 numbers:

8、); for (int i = 0; i b.length; i+) bi = s.nextInt(); int max = b0; for (int i = 0; i max) max = bi; System.out.println(最大值: + max); int min = b0; for (int i = 0; i b.length; i+) if (bi min) min = bi; System.out.println(最小值: + min); int sum = 0; for (int i = 0; i b.length; i+) sum += bi; System.out.p

9、rintln(和为: + sum); double level = 0.0; level = sum / 10.0; System.out.println(平均值: + level); 运行结果截图如下:30 100个人吃100个馒头,1个大人吃3个,3个小孩吃一个。编写程序计算有几个大人几个小孩,如果满足条件的情况有多个,则每个结果都输出。package com.demo;publicclass Demo01 publicstaticvoid main(String args) for (int i = 0; i 100; i+) for (int j = 100 - i; j 300; j

10、+) if (i * 3 + j / 3) = 100) System.out.println(大人: + i + 个,小孩: + j + 个); break; 25 。据推测大于4的偶数都可以写成两个质数(素数)的和。编写程序进行验证100以内的偶数是否满足,如果有写出表达式,如果没有则输出“没有”。如果能够写成的式子多于1个,则写出两个数字差比较大的那对。例如:42 = 5 + 37 = 11 + 31 = 13 + 29 = 19 + 23 输出42 = 5 + 37即可。因为37-5最大。package com.demo;publicclass Demo01 publicstaticv

11、oid main(String args) int m, a, b, i, j, x = 0, y = 0; for (m = 6; m = 100; m = m + 2) for (a = 2, b = m - a; a = b; a+) for (i = 2; i (a / 2) x = 1; b = m - a; for (j = 2; j (b / 2) y = 1; if (x * y = 1) System.out.println(m + = + a + + + b); x = 0; y = 0; break; 26在上台阶的时候,每次可以上一个,或者上两个,给定一个数字表示一共有

12、多少个台阶,编写程序计算有多少种可能的走法。源程序如下所示:package com.demo;publicclass Demo01 publicstaticvoid main(String args) int n = 10; for (int i = 0; i n; i+) / 控制走一级台阶的人数 for (int j = 0; j = n / 2; j+) / 控制走二级台阶的人数 if (i * 1 + j * 2 = n) System.out.println(走一介台阶的有; + i + 走两阶台阶的有: + j); 程序运行结果截图如下:40 编写方法使用冒泡排序对数组进行排序,参

13、数要是要排序的数组。源程序如下所示:package com.demo;publicclass Demo01 publicstaticvoid main(String args) int a = 32, 31, 64, 142, 332, 13, 144 ; Demo01.bubbleSort(a); for (int i = 0; i a.length; i+) System.out.print(ai + ); publicstaticvoid bubbleSort(int a) for (int i = 1; i a.length; i+) for (int j = 1; j aj + 1)

14、 int temp = aj; aj = aj + 1; aj + 1 = temp; 程序运行结果截图如下:41 用程序实现24点游戏,让用户输入4个数字(1-10),程序给出如何计算得到24。例如输入1、2、3、4,程序要输出1*2*3*4=24,例如输入7、8、9、10,输出8*9/(10-7)=24。六、实验总结与体会:实验三 Java面向对象基础一、实验目的与要求(1) 掌握面向对象的基本概念,掌握类定义的方法、对象的创建、访问;(2) 掌握几个关键字的特征及用法:static、this;(3) 了解类的权限、成员的权限;(4) 字符串与整型、实型的转换;(5) String、Str

15、ingBuffer、StringBuilder的差别及用法;(6) 几个常用工具类的使用,主要有Math、Random、date、Calendar等。二、实验原理三、预习与准备 掌握基本的概念及原理,明确实验任务和目的,准备实验的源代码。四、实验内容56789(综合组织成一个程序)、19、21、35、36、38五、实验过程:5、定义一个表示学生的类,要求如下:1)类名是Student。2)该类包含3个属性:sid(表示学号)、sname(表示姓名)、sage(表示年龄)。3)为3个属性提供set和get方法。4)编写一个无参数的构造方法,把年龄设置为18。5)编写有一个参数的构造方法,参数为学

16、生学号,把年龄设置为18。6)编写有两个参数的构造方法,第一个参数表示学号,第二个参数表示姓名,把年龄设置为18。7)编写有3个参数的构造方法,第一个参数表示学号,第二个参数表示姓名,最后一个参数表示年龄。8)编写一个toSting方法,把学生信息转换成一个字符串,字符串的格式为“学号姓名年龄”。6、编写一个测试类Test,在Test中编写main方法,main方法中的主要代码如下:1)调用无参数的构造方法创建Student对象s1;2)通过setSid把学号设置为“2013030101”。3)通过setSname把姓名设置为“杨光”。4)通过setSage把年龄设置为19。5)调用s1的to

17、String方法把得到的结果赋值给String类型的info变量。6)输出info的值。7、编写一个测试类Test,在Test中编写main方法,main方法中的主要代码如下:1)调用有一个参数的构造方法创建Student对象s2,学号为“2013030102”。2)通过setSname把姓名设置为“李玲”。3)通过setSage把年龄设置为20。4)调用s2的toString方法把得到的结果赋值给String类型的info变量。5)输出info的值。8、编写一个测试类Test,在Test中编写main方法,main方法中的主要代码如下:1)调用有两个参数的构造方法创建Student对象s3,

18、学号为“2013030103”,姓名为“王宾”。2)调用s3的toString方法把得到的结果赋值给String类型的info变量。3)输出info的值。9、编写一个测试类Test,在Test中编写main方法,main方法中的主要代码如下:1)调用有3个参数的构造方法创建Student对象s4,学号为“2013030104”,姓名为“杨路”,年龄为18。2)调用s4的toString方法把得到的结果赋值给String类型的info变量。3)输出info的值。源代码如下:package maileku7;public class Student String sid; String sname

19、; int sage; /构造方法 public Student() super(); sage=18; public Student(String sid) super(); this.sid = sid; sage=18; public Student(String sid, String sname) super(); this.sid = sid; this.sname = sname; sage=18; public Student(String sid, String sname, int sage) super(); this.sid = sid; this.sname = sn

20、ame; this.sage = sage; /toSting方法 public String toString() return Student sid- + sid + , sname- + sname + , sage- + sage + ; /get/set方法 public String getSid() return sid; public void setSid(String sid) this.sid = sid; public String getSname() return sname; public void setSname(String sname) this.sna

21、me = sname; public int getSage() return sage; public void setSage(int sage) this.sage = sage; package maileku7;public class TestStudent public static void main(String args) /调用无参数构造方法 Student s1=new Student(); s1.setSid(2013030101); s1.setSname(杨光); s1.setSage(19); String info=s1.toString(); System.

22、out.println(info); /调用一个参数的构造方法 Student s2=new Student(2013030102); s2.setSname(李玲); s2.setSage(20); String info1=s2.toString(); System.out.println(info1); /调用两个参数的构造方法 Student s3=new Student(2013030103,王宾); String info2=s3.toString(); System.out.println(info2); /调用三个参数的构造方法 Student s4=new Student(2

23、013030104,杨路,18); String info3=s4.toString(); System.out.println(info3); 运行结果截图如下:19、编写一个方法对学生数组进行排序,方法参数是学生数组,学生使用Student类表示,包括姓名、学号和成绩。要求按照成绩高低进行排序。源程序如下:public class Student public static void main(String args) String sid; String sname; int score; Scanner Score=new Scanner(System.in); int student

24、=new int10; System.out.println(亲输入学生成绩:!); for(int i=0;istudent.length;i+) studenti=Score.nextInt(); System.out.println(排序后的成绩为:); Arrays.sort(student); for(int i=0;istudent.length;i+) System.out.print(studenti+ ); 运行结果如下截图:21、编写方法实现字符串压缩的功能,连续的n个字符x表示为xn,例如aaaa表示为a4,如果只出现一次直接输出即可。例如输入aaaaaaaabbbccd

25、ddeeebbba,输出a7b3c2d3e3b3a。package com.demo;publicclass Demo01 publicstaticvoid main(String args) String s = comp(aaaaaaaabbbccdddeeebbba); System.out.println(s); publicstatic String comp(String str) int i = 1; StringBuilder buf = new StringBuilder(); int count = 1; char ch = str.charAt(0); for (;) c

26、har c = i = str.length() ? 10 : str.charAt(i); if (c = ch) count+; else if (count = 1) buf.append(ch); else buf.append(ch).append(count); count = 1; ch = c; i+; if (i = str.length() + 1) break; return buf.toString(); 六、实验总结与体会:实验四深入面向对象一、实验目的与要求(1) 深刻理解面向对象的三大特征;(2) 熟练掌握关键super、final的含义及用法;(3) 理解什么是

27、抽象类、抽象方法,以及两者间的关系;(4) 深刻理解接口的概念、作用,以及与抽象类的差别;(5) 类类型的转换(向上和向下转换),运算符 instanceof使用;(6) 深刻理解、掌握动态性;(7) Object、Class这2个系统类的常用方法,了解反射的概念及目的。(8) 初步了解对象间进行消息传递的方式(两种一是乙类对象作为甲类的成员,对象作为方法的参数)。二、实验原理 (1)面向对象三大特征:面向对象的3大特征是封装、继承、多态。封装:在定义一个类时都需要认真思考,类是现实世界中事物的属性和对这些属性进行操作的方法的集合体。因此一个类应该包括数据成员和函数成员,仅仅只含一种成员的类很少(

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1