中南民族大学JAVA实验报告.doc_第1页
中南民族大学JAVA实验报告.doc_第2页
中南民族大学JAVA实验报告.doc_第3页
中南民族大学JAVA实验报告.doc_第4页
中南民族大学JAVA实验报告.doc_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

院 系: 计算机科学学院 专 业: 计算机科学与技术 年 级: 11级(2班) 课程名称: JAVA实验 学 号: 11061054 姓 名:甘土有 指导教师: 杜老师 2013年 4 月 16 日年级11级班号(2)班学号11061054专业计算机科学与技术姓名甘土有实验名称实验一 简单Java Application编程实验类型设计型综合型创新型实验目的或要求1.实验目的(1)了解Java命令行编程环境JDK的组成;(2)熟悉Java命令行编程环境JDK的配置和使用;(3)掌握Application程序的输入和输出;(4)掌握Application程序的结构和命名;(5)熟悉Textpad等编辑器的使用。2实验要求:(1)熟悉javac、java等命令的使用,熟悉使用Java编辑器。(2)编写一个Java Application程序,接受用户从键盘输入的10个整数,比较并输出 其中的最大值和最小值。(3)编写一个Java Application程序,从键盘读取年份,输出该年份是否为闰年。实验原理(算法流程)实验(1)代码:import java.util.*;/进行 Scanner操作时需要用到此包public class MyClass public static void main(String args) Scanner input= new Scanner(System.in); int num = new int10; System.out.println(输入 + num.length + 个整数:); for (int i = 0; i num.length; i+) try System.out.print(第 + (i + 1) + 个整数:);/数组中i以0开始 numi = Integer.parseInt(input.nextLine();/对输入String进行强制类型转换成int类型 catch (Exception e) System.out.print(输入不正确,请重新输入);/捕捉异常情况 i-; int max = 0, min = 0; for (int i = 0; i nummax) max = i; if (numi nummin) min = i; System.out.println(最大值为第 + (max + 1) + 个整数 + nummax); System.out.println(最小值为第 + (min + 1) + 个整数 + nummin);实验(2)代码:import java.util.*;/输入类Scanner包public class Yearpublic static void main(String args) Scanner scanner = new Scanner(System.in); /*构造一个Scanner对象,其传入参数System.in*/ System.out.println(请输入年份:); int year= scanner.nextInt(); /*读取一个int数值 */ if(year % 4=0 & year % 100 !=0| year % 400=0) /*判断是否为闰年*/ System.out.println(+year+ 是闰年!); else System.out.println(+year+ 不是闰年!);组内分工(可选) 无实验结果分析及心得体会实验(1)运行结果:实验(2)运行结果:成绩评定教师签名: 2013年 月 日备注:源代码附后,源代码要求有注释说明年级11级班号(2)班学号11061054专业计算机科学与技术姓名甘土有实验名称实验二 Java类的定义和对象的创建实验类型设计型综合型创新型实验目的或要求1. . 实验目的(1)进一步熟悉Java命令行编程环境JDK、eclipse开发环境的使用;(2)熟悉类与对象的概念与关系;(3)掌握Java类的定义、对象的创建;(4)掌握成员变量的访问、成员方法的调用;(5)掌握封装的概念及意义。2. 实验要求(1)编写一个复数类ComplexNumber,其中包括实例变量real、image,方法如下:1)构造方法 ComplexNumber(double a,double b), ComplexNumber(String a,String b)2) ComplexNumber add(ComplexNumber x) /当前复数对象与另一复数对象进行复数的加法运算,返回一新的复数对象3) static ComplexNumber add(ComplexNumber x,ComplexNumber y) /复数对象x与y相加。4) ComplexNumber sub(ComplexNumber x) /当前复数对象与另一复数对象进行复数的减法运算,返回一新的复数对象5) static ComplexNumber sub(ComplexNumber x,ComplexNumber y) /复数对象x与y相减(x-y)。6)double getReal () /获取复数对象的实部7)double getImage () /获取复数对象的虚部8)void show() /按照实部+虚部i(如10+8i)的形式显示复数对象的值9)static String toString(ComplexNumber x)/返回复数对象对应的串(如4+7i),定义成静态方法静态方法 (2)编写一个主类,定义并实例化两个复数对象,输出这两个复数对象的值,然后进行复数的加法和减法运算,输出其运算结果(对象)的值。3. 实验要求(1)实例化复数对象的实部和虚部值要求从键盘输入;(2)主类名自定,注意其与文件名的关系;实验原理(算法流程) import java.io.*;public class fushu public static void main(String args) int shi1,xu1,shi2,xu2;int cond; String yes; do yunsuan yun = new yunsuan(); /创建yun对象 System.out.print(请输入第一个式子的实部:); shi1=yun.input(); System.out.print(请输入第一个式子的虚部:); xu1=yun.input(); System.out.print(请输入第二个式子的实部:); shi2=yun.input(); System.out.print(请输入第二个式子的虚部:); xu2=yun.input();/分别输入两式的实部和虚部; yun.menu(); /调用yun中的菜单方法 cond=yun.input(); /调用yun中的输入方法并将值赋给cond if(cond=1) yun.add(shi1,shi2,xu1,xu2);/如果选择1,则调用yun中的加法方法 else if(cond=2) yun.sub(shi1,shi2,xu1,xu2); /如果选择2,则调用yun中的减法方法 else yun.add(shi1,shi2,xu1,xu2);/如果选择1,则调用yun中的加法方法 yun.sub(shi1,shi2,xu1,xu2); /如果选择2,则调用yun中的减法方法 System.out.print(是否继续计算(Y/N); yes = yun.input1(); /判断是否继续运算 while(yes.equals(Y) | yes.equals(y); class yunsuan /运算方法类; void add(int a,int b,int c,int d)/加法方法 实验原理(算法流程) int sums,sumx; /实部的总和,虚部的总和 sums = a+b; sumx = c+d; if(sums=0&sumx=0)/如果实部、虚部都为0 System.out.println(加法运算结果为:+0); else if(sums=0) /如果实部为0,则只显示虚部 System.out.println(加法运算结果为:+sumx+i); else System.out.println(加法运算结果为:+sums+sumx+i); void sub(int a,int b,int c,int d) /减法方法 int sums,sumx; sums = a-b; sumx = c-d; if(sums=0 & sumx=0)/如果实部、虚部都为0 System.out.println(减法运算结果为:+sumx); else if(sums=0)/只有实部为0 System.out.println(减法运算结果为:+sumx+i); else if(sums!=0 & sumx 0)/实部不为0,虚部小于0 System.out.println(减法运算结果为:+sums+sumx+i); else System.out.println(减法运算结果为:+sums+sumx+i); void menu()/菜单方法; System.out.println(* 1、加法运算 *); System.out.println(* 2、减法运算 *); System.out.println(* 3、加法一起减法运算 *); System.out.print(请输入序号,要进行什么运算:); int input()/输入整型方法 int con=0; try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); int b =Integer.parseInt(in.readLine();/将输入的字符转换为整型 con=b; catch(Exception e) 实验原理(算法流程) System.out.print(输入有误请重新输入:+n); return con; String input1()/输入字符方法 String post = null; try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); post = in.readLine(); catch(Exception e); return post; 组内分工(可选) 无实验结果分析及心得体会运行结果:成绩评定教师签名: 2013年 月 日备注:源代码附后,源代码要求有注释说明年级2011级班号计科(2)学号11061054专业计算机科学与技术姓名甘土有实验名称 实验三 Java的继承和多态编程实验类型设计型综合型创新型实验目的或要求实验目的:使用Java的继承和多态编程实现小型公司的工资管理2.实验内容:编写Application程序实现小型公司的工资管理。该公司主要有4类人员:经理(Manager)、兼职技术人员(Technician)、销售员(Salesman)和销售经理(SalesManager)。要求记录这些人员的编号、姓名和月工资,计算他们的月工资并显示全部信息。月工资计算办法是:经理拿固定月薪8000元;兼职技术人员按每小时100元领取月薪;销售人员按该当月销售额的4%提成;销售经理既拿固定月工资也领取销售提成,固定月工资为5000元,销售提成为所管辖部门当月销售总额的0.5%。实验要求:(1)不同人员的信息从键盘读取;(2)主类名自定,注意其与文件名的关系;(3)当输入的数据格式不对,提示用户输入一个格式正确的数据;(4)可用图形用户界面或字符界面;(5)可考虑为每一个类建立一个Java源文件。实验原理(算法流程) import java.io.*;public class company static String input1() /字符输入方法; String post = null; try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); post = in.readLine(); catch(Exception e); return post; static int input2() /整型输入方法; int b=0; try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); int a = Integer.parseInt(in.readLine(); b = a; catch(Exception e); return b; public static void main(String arg) String contiue; Employee emp = new Employee(); /创建职工对象; Manager man = new Manager(); /创建经理对象; Technician tec = new Technician(); /创建技术人员对象; Salesman sal = new Salesman(); /创建销售人员对象; SalesManager salm = new SalesManager(); /创建销售经理对象; do System.out.println(此程序是计算员工的工资);System.out.println(请输入员工名字:); = input1(); System.out.println(请输入员工编号:); emp.number = input2(); System.out.println(请输入员工职位:); System.out.println((注:M:经理 T:兼职技术人员 S:销售员 SM:销售经理))实验原理(算法流程) emp.post = input1(); if(emp.post.equals(M)|emp.post.equals(m) emp.people(); man.manager();/调用经理类的方法,输出经理的工资; else if(emp.post.equals(T)|emp.post.equals(t) tec.tput();/调用技术人员类中的方法并计算工资; emp.people(); tec.technician();/调用技术人员类的方法输出工资; else if(emp.post.equals(S)|emp.post.equals(s) sal.sput();/调用销售人员类中的方法并计算工资; emp.people(); sal.salesman();/调用销售人员类的方法输出工资; else if(emp.post.equals(SM)|emp.post.equals(sm) salm.smput();/调用销售经理类中的方法并计算工资 emp.people(); salm.salesmanager();/调用销售经理类的方法输出工资; else System.out.print(您输入的信息有误,请重新输入:); System.out.print(是否继续计算(Y/N); contiue =input1(); while(contiue.equals(Y) | contiue.equals(y); class Employee /职工类,个人的信息以及输出基本信息; String name; /职工姓名; String post; /职位; int number; /职工编号; float salary; /总工资; float hour; /工作时间,以小时计算; float saleV; /销售额; public void people() System.out.println(姓名:+name); System.out.println(编号:+number);实验原理(算法流程)class Manager extends Employee /经理类,继承职工类; int salary = 8000; /经理的固定工资; void manager() /工资输出方法; System.out.println(职位:经理); System.out.println(工资:+salary); class Technician extends Employee /技术人员类,继承职工类; int hou; void tput() /工作时间输入方法,并计算工资; System.out.println(请输入工作时间(以小时为单位):); try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); hou = Integer.parseInt(in.readLine(); catch(IOException e); hour = hou; salary = hour * 100; /计算技术人员的工资; void technician() System.out.println(职位:兼职技术人员); System.out.println(工资:+salary); class Salesman extends Employee /销售人员类,继承职工类; void sput() /销售额输入方法,并计算总工资; double sal = 0; System.out.println(请输入月销售额:); try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); sal=Integer.parseInt(in.readLine(); catch(IOException e);salary = (float) (sal *0.04); /计算销售人员的工资; 实验原理(算法流程) class SalesManager extends Employee /销售经理类,继承职工类; void smput() /销售额输入方法,并计算总工资; float sal = 0; System.out.println(请输入月销售额:); try BufferedReader in = new BufferedReader(new InputStreamReader(System.in); sal=Integer.parseInt(in.readLine(); catch(IOException e); salary = (float) (sal * 0.005 + 5000); /总工资; void salesmanager() System.out.println(职位:销售经理); System.out.println(工资:+salary); 组内分工(可选) 无实验结果分析及心得体会运行结果:成绩评定教师签名: 2013年 月 日备注:源代码附后,源代码要求有注释说明年级2011级班号计科(2)班学号11061054专业计算机科学与技术姓名甘土有实验名称 实验四 图形用户界面编程实验类型设计型综合型创新型实验目的或要求实验目的:(1)了解Java系统图形用户界面的基本工作原理及界面的设计步骤;(2)掌握Java事件委托模型;(3)熟悉Java图形用户界面包;(4)能熟练使用基本组件和容器。(5)掌握java界面布局。实验要求:写一个程序能进行简单的(加减乘除)数学计算,界面有0-9这10个数字按键、“+-*/=”5个操作按键和一个TextField文本框,用户首先按相应数字键输入正确操作数1,然后选取操作符,接着输入操作数2,最后点击“=”输出计算结果。实验原理(算法流程) import java.applet.*;import java.awt.*;import java.awt.event.*;public class calculator extends Applet implements ActionListener TextField text; /输出结果 Button button1,button2,button3,button4,button5,button6,button7,button8,button9,button0; /0-9 Button buttonjia,buttonjian,buttoncheng,buttonchu,buttondeng, buttondbackspace; /+-*/= Panel p1,p2,p3,p4,p5; int op1,op2,op3; String v=; String symbol = ,end = ,result=; public void init() p1 = new Panel(); p1.setBackground(Color.pink); p2 = new Panel(); p2.setBackground(Color.green); p3 = new Panel(); p3.setBackground(Color.green); p4 = new Panel(); p4.setBackground(Color.green); p5 = new Panel();/创建5个无边框容器; p5.setBackground(Color.green); text = new TextField(20); /创建1个文本框; button1 = new Button(1); /创建各个按钮; button2 = new Button(2); button3 = new Button(3); button4 = new Button(4); button5 = new Button(5); button6 = new Button(6); button7 = new Button(7); button8 = new Button(8); button9 = new Button(9); button0 = new Button(0); buttonjia = new Button(+); buttonjian = new Button(-); buttoncheng = new Button(*)实验原理(算法流程) buttonchu = new Button(/); buttondeng = new Button(=); buttondbackspace = new Button(backspace); p1.add(text); /进行布局设计,分别放入4个无边框容器; p2.add(buttonjia); p2.add(buttoncheng); p2.add(buttonjian); p2.add(buttonchu); p2.add(buttondeng); p3.add(button1); p3.add(button2); p3.add(button3); p3.add(button4); p3.add(button5); p4.add(button6); p4.add(button7); p4.add(button8); p4.add(button9); p4.add(button0); p5.add(buttondbackspace); add(p1); /添加无边框容器; add(p2); add(p3); add(p4); add(p5); button1.addActionListener(this);/将按钮注册给监听者; button2.addActionListener(this); button3.addActionListener(this); button4.addActionListener(this); button5.addActionListener(this); button6.addActionListen

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论