收藏 分享(赏)

Java期末复习资料程序题部分.doc

上传人:精品资料 文档编号:10670607 上传时间:2019-12-18 格式:DOC 页数:24 大小:616.50KB
下载 相关 举报
Java期末复习资料程序题部分.doc_第1页
第1页 / 共24页
Java期末复习资料程序题部分.doc_第2页
第2页 / 共24页
Java期末复习资料程序题部分.doc_第3页
第3页 / 共24页
Java期末复习资料程序题部分.doc_第4页
第4页 / 共24页
Java期末复习资料程序题部分.doc_第5页
第5页 / 共24页
点击查看更多>>
资源描述

1、【程序题】 (题型:编程题、程序填空题)【例题 1】编写程序,实现判断随机产生的一个三位整数是否为水仙花数,如果是则显示结果“是水仙花数” ,否则显示“不是水仙花数” 。所谓“ 水仙花数”是指一个 3 位数,其各位数字立方和等于该数本身。例如,153 是一个“水仙花数” ,因为 153=13+53+33。请将下列程序补充完整。import java.lang.Math;public class Angelpublic static void main(String args) int x;x=(int)(Math.random()*900+100);System.out.println(“产生

2、的随机三位整数为:“+x);/*求出产生的随机数 x 是否为水仙花数,并输出结果*/参考答案【例题 2】编写程序,实现求一个整型数组中所有能被 3 整除的数的和,并且输出结果。请将下列程序补充完整。public class Testpublic static void main(String args ) int i , s = 0 ;int a = 10 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 ;/*求出所有能被 3 整除的数的和,并输出结果*/参考答案【例题 3】编写 Java 程序,求 13-23+33-43+973-983+993-1003 的值

3、,并输出结果,请将下列程序补充完整。public class T1public static void main(String args)/*求出 13-23+33-43+973-983+993-1003 的值,并输出结果*/参考答案【例题 4】如下 java 源程序文件中,程序的功能是根据文本框 txt1 中输入的 x,按下列公式求分段函数 g(x)的值,并将结果在文本框 2 中显示出来。请补充命令按钮的事件程序,使它得到正确的结果。import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax

4、.swing.*;class funJFrame win=null;JTextField txt1=null,txt2=null; JButton btn=null;public fun()win=new JFrame(“函数计算“);win.setSize(200,200); win.setLocation(100, 100);txt1=new JTextField(); txt1.setBounds(10, 10, 125, 36);txt2=new JTextField(); txt2.setBounds(10, 50, 125, 36);btn=new JButton(“计算函数“);

5、 btn.setBounds(10, 100, 150, 36);btn.addMouseListener(new MouseAdapter()Overridepublic void mouseClicked(MouseEvent e) /在此补充程序代码);win.setLayout(null); win.add(txt1);win.add(txt2);win.add(btn);win.setVisible(true);public class Exam01 public static void main(String args) new fun();参考答案【例题 5】在 main 方法中

6、编写程序,输出 1 到 200 之间所有能被 3 整除的整数,要求输出时每行输出 5 个整数。public class Exam05 public static void main(String args) 参考答案【例题 6】实现一个名为 Person 的类和它的子类 Employee,Employee 有两个子类 Faculty 和Staff。要求如下: Person 类中的属性有:姓名 name(String 类型) ,地址 address(String 类型) ,电话号码 telphone(String 类型)和电子邮件地址 email(String 类型) ; Employee 类中

7、的属性有:办公室 office(String 类型) ,工资 wage(double 类型) ,受雇日期 hiredate(String 类型) ;有一个返回值为 double 类型的方法calcTax(double r)用于计算纳税额,纳税额公式为 wage*r。 Faculty 类中的属性有:学位 degree(String 类型) ,级别 level(int 类型) ;有一个覆写父类的方法 calcTax(),方法的纳税额计算公式为 wage*r*0.5。 Staff 类中的属性有:职务称号 duty(String 类型) ;参考答案【例题 7】根据如下要求编写类,并完成测试类的编写(1

8、)第一个类是抽象图形类(Shape) ,含有一个成员变量 color(字符串类型) ,一个没有参数的构造方法,以及一个有一个字符串类型参数的构造方法来初始化颜色变量,还有一个返回颜色变量值的成员方法 show,以及一个空方法 getArea 获取面积,返回值为double 类型;(2)第二个类是圆形类(Circle)继承自图形类,含有一个成员变量半径 r,有一个有两个参数的构造方法,来初始化颜色和半径,覆写父类方法 getArea,返回值为double,获取圆的面积值。(3)第三个类是矩形类(Rectangle)继承自图形,含有两个 double 类型的成员变量长 a 和宽 b,有一个有三个参

9、数的构造方法,来初始化颜色、长和宽,覆写父类方法getArea,返回值为 double,获取矩形的面积值。参考答案【例题 8】定义 student 类,其中包括四个私有变量(name、age、sex、score) 、三个构造方法和 show()方法。各成员的含义如下。(1)变量 name 为字符串类型 String,用于存储学生的姓名。(2)变量 age 为 int 类型,用于存储学生的年龄。(3)变量 sex 为 boolean 类型,用于存储学生的性别,男生为 false,女生为 true。(4)变量 score 为 double 类型,用于存储学生的成绩。(5)构造方法 1 为不带参数的

10、构造方法。 (6)构造方法 2 包括三个参数,用于为变量(name、age、sex)赋值。(7)构造方法 3 包括四个参数,用于为变量(name、age、sex 和 score)赋值。(8) Show()方法无参数,用于输出变量(name、age、sex 和 score)的值。参考答案【例题 9】按以下要求编写程序(1) 定义一个接口 Tools,为其添加一个返回值为 double 的 computerFee 方法,用于计算运输费用,该方法含有四个参数 distance,per,tolls,number,分别表示元/每公里、距离、过路费、乘客数。(2) 定义一个抽象类 Traffic,为其添加

11、一个抽象方法 getName,用于返回交通工具的名称。定义一个类 Car 继承抽象类 Traffic 并实现接口 Tools,求出该交通工具的运输费用,运输费用为:“距离元/公里+过路费+乘客数” ,且返回的名称为“Car” 。(3) 定义一个类 Bus 继承抽象类 Traffic 并实现接口 Tools,求出该交通工具的运输费用,运输费用为“距离元/公里+过路费+乘客数0.2” ,且返回的名称为“Bus” 。(4) 定义一个 ComputerFee 类,为其添加一个静态方法 getFee,该方法除了接收一个Tools 接口类型的形参变量外,还接收元/每公里、距离、过路费、乘客数等参数,在该方

12、法体内调用 Tools 接口类型形参变量的 computerFee 方法(5) 定义一个测试类 Test,为其添加 main 方法,在 main 方法中分别创建 Car 类、Bus 类的实例对象。然后编写程序代码调用 ComputerFee 类的 getFee 方法并将 Car 类和 Bus 类的实例对象分别作为实参传入,同时传入的其它四个参数的值分别为(100,20,200,30)和(200,10,300,40) 。参考答案【例题 10】按以下要求编写程序(1) 定义一个员工类 Employee,类中与四个私有数据成员:员工号(String 类型) 、姓名(String 类型) 、薪水(do

13、uble 类型) 、部门(String 类型) 。(2) 为员工类 Employee 添加一个如下构造方法,用于初始化成员变量:i 无参构造,无任何操作。ii 单参构造:只传递员工号,对员工号进行初始化。iii 双参构造,传递员工号,姓名,对员工号和姓名进行初始化,其中员工号通过调用单参构造方法完成。iv 四参构造,传递员工号、姓名、部门、薪水,初始化所有成员变量,其中员工 号和姓名通过调用双参构造完成。(3) 为员工类添加一个方法 printInfo,用于输出员工类的相应信息。(4) 编写员工类的测试类 Test,添加 main 方法,在 main 方法中编写程序创建一个员工对象:员工号为

14、001,姓名为:Mike,部门为:开发部,薪水为:10000;调用printInfo 方法输出员工的相关信息。(5)参考答案【例题 11】按以下要求编写程序(1( 创建一个表示复数的类 Complex。复数由两部分组成(即有两个成员变量):实部和虚部,一个复数可以表示为(a,bi) ,a 代表实部,b 代表虚部。数据类型都为double。(2( 为 Complex 类添加两个构造器,一个无参构造,其成员变量初始值都为 0,另一个带两个参数的构造器,为其两个变量进行初始化。(3( 为 Complex 类添加一个方法 add,实现两个复数的加法运算。操作的规则是:(a,bi)+(c,di)=(a+

15、c,(b+d)i);(4( 编写方法 getString 返回以“(a,bi) ”形式复数信息。(5( 编写类进行测试 Test,在该类的 main()方法中创建 2 个 Complex 对象,参数分别为(4.0,5.0)和(2.5,3.0),然后输出 2 个 Complex 对象信息和 两个对象相加运算的结果。参考答案【例题 12】按以下要求编写程序(1) 声明一个图书类 Book,类中有两个实例成员变量为书名(String 类型) 、书价(double 类型) 和一个类成员变量为数量(int 类型,初始值为 0,用于统计书的数量)。(2) 为 Book 类添加两个构造器(无参和两参) ,在

16、无参构造方法中统计书的数量,在两参构造方法中调用无参构造器并对成员变量书名和书价进行初始化。(3) 为 Book 类添加一个静态方法 getNum,用于返回类成员变量数量的值。(4) 为 Book 类添家一个方法 getInfo,用于返回书名和价格。(5) 编写类进行测试 Test,在该类的主方法 main 中定义一个含有 3 个元素的对象数组,并且对数组元素中的对象进行初始化(内容自行给定) ,然后输出对象数组的相应信息以及求出图书的数量。参考答案【例题 13】按以下要求编写程序(1)定义一个人类 Person,Person 类中包含 4 个私有的数据成员name、addr、sex、age,

17、分别为字符串型、字符串型、字符型及整型,表示姓名、地址、性别和年龄。为Person类添加一个 4 参构造方法,为成员变量初始化(要求年龄在 18-60 岁之间方可赋值) ;添加一个输出方法 getString 返回人的相关信息。(2)定义一个学生类 Student,继承 Person 类,并增加成员 math、english 存放数学和英语成绩。为 Student 类添加一个 6 参构造方法,并重写父类的方法 getString,返回学生的相关信息。(3) 定义一个 Test 类,添加 main 方法,在 main 方法中声明并创建一个 Student 类的对象,要求调用其六个参数的构造器,并

18、调用其 getString 方法输出信息。参考答案【例题 14】程序填空题范例, 编写程序,设计一个简单的用户界面,窗口中包含两个组件:JTextArea 和 JButton,要求实现点击按钮时,将 JTextArea 组件中的内容保存到 t1.txt文件,存放路径为“D:t1.txt” 。请将下列程序补充完整。import javax.swing.*;import java.awt.event.*;import java.io.*;import java.awt.*;class MyFrame private JFame f;private JButton b;private JTextAr

19、ea ta;public MyFrame()/创建窗体,窗体名称为“保存窗口”ta=new JTextArea(8,10);/创建按钮,按钮标题为“保存”/利用BorderLayout布局,添加文本域组件于窗体的中心/利用BorderLayout布局,添加按钮组件于窗体的南部/设置窗体大小(300,200)f.setLocation(300,300);/设置窗体可见f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(1););b. /注册按钮监视器public vo

20、id actionPerformed(ActionEvent arg0) /创建文件try/创建输出流String str=ta.getText(); byte b=str.getBytes(); /写入文件 out.close(); catch(Exception e)e.printStackTrace();); public class Demopublic static void main(String args)new MyFrame();【例题 15】编写程序,设计一个简单的用户界面,窗口中包含两个组件:JTextArea 和 JButton, 要求实现点击按钮时,打开一个 t1.t

21、xt 文件,存放路径为“D:t1.txt” 。import javax.swing.*;import java.awt.event.*;import java.io.*;import java.awt.*;class MyFrame private JFrame f;private JTextArea ta;private JButton b; public MyFrame()/创建窗体,窗体名称为“打开窗口”ta=new JTextArea(8,10);/创建按钮,按钮标题为“打开”/利用BorderLayout布局,添加文本域组件于窗体的中心/利用BorderLayout布局,添加按钮组件

22、于窗体的南部/设置窗体大小(300,200)f.setLocation(300,300);/设置窗体可见f.addWindowListener(new WindowAdapter()public void windowClosing(WindowEvent e)System.exit(1););b. /注册按钮监视器public void actionPerformed(ActionEvent arg0)ta.setText(null);/创建文件if(file!=null)try/创建输入流byte b=new byte(int)file.length(); /读取文件 ta.append(

23、new String(b); in.close(); catch(Exception e)e.printStackTrace();); public class Demopublic static void main(String args)new MyFrame();【例题 16】编写程序实现窗体和组件,窗体上有三个文本框(JTextField)txt1、txt2 和 txt3,一个命令按钮。为命令按钮添加鼠标事件监听,当点击按钮时,将文本框 txt1 和 txt2 中输入的数字进行求和,并将结果显示在文本框 txt3 中。import java.awt.event.MouseEvent;i

24、mport java.awt.event.MouseListener;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JTextField;public class Exam11 public static void main(String args) JFrame win=new JFrame(“简单计算器“);win.setSize(400, 180);win.setLocation(400, 200);win.setLayout(null);

25、JLabel l1=new JLabel(“请输入数字 1“);JLabel l2=new JLabel(“请输入数字 2“);JLabel l3=new JLabel(“求和结果“);l1.setSize(160, 30);l2.setSize(160, 30);l3.setSize(160, 30);l1.setLocation(10, 10);l2.setLocation(10, 50);l3.setLocation(10, 90);final JTextField txt1=new JTextField(10);final JTextField txt2=new JTextField(

26、10);final JTextField txt3=new JTextField(10);txt1.setBounds(120, 10, 160, 30);txt2.setBounds(120, 50, 160, 30);txt3.setBounds(120, 90, 160, 30);JButton btn=new JButton(“=“);btn.setBounds(300, 90, 50, 30);/*在下面空白行处添加程序代码*/btn.addMouseListener(new MouseListener()public void mouseClicked(MouseEvent arg

27、0) int a=Integer.parseInt(txt1.getText();int b=Integer.parseInt(txt2.getText();txt3.setText(a+b)+“);public void mouseEntered(MouseEvent arg0) public void mouseExited(MouseEvent arg0) public void mousePressed(MouseEvent arg0) public void mouseReleased(MouseEvent arg0) );win.add(l1);win.add(l2);win.ad

28、d(l3);win.add(txt1);win.add(txt2);win.add(txt3);win.add(btn);win.setVisible(true);【例题 17】设计如下所示窗体,窗体上有两个标签组件(LB1 和 LB2) 、两个 JTextField 文本框(txt1和 txt2) 、一个命令按钮 btn,按如下要求完成程序设计。(1)设置窗体标题为“计算 n 的阶乘” ,窗体大小 360, 180,窗体位置 300,300(2)设置 LB1 和 LB2 大小均为(宽 160,高 30) ,LB1 的位置为(10, 10),LB2 的位置为(10, 50)(3)设置 txt1

29、 和 txt2 的大小均为宽 160, 高 30 ,txt1 的位置为(120,10)txt2 的位置为(120,50)(4)设置命令按钮 btn 的显示字符为 ”=”,设置其大小为 50, 30,显示位置为 300, 50(5)为命令按钮 btn 添加鼠标点击事件,当按下按钮时,计算 txt1 中输入的整数的阶乘,并将结果显示在 txt2 中。import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JButton;import javax.swing.JFrame;impor

30、t javax.swing.JLabel;import javax.swing.JTextField;public class Exam11 public static void main(String args) JFrame win=new JFrame(“计算 n 的阶乘“);win.setSize(400, 180);win.setLocation(400, 200);win.setLayout(null);JLabel lb1=new JLabel(“请输入 n“);JLabel lb2=new JLabel(“n 的阶乘是“);lb1.setSize(160, 30);lb2.se

31、tSize(160, 30);lb1.setLocation(10, 10);lb2.setLocation(10, 50);final JTextField txt1=new JTextField(10);final JTextField txt2=new JTextField(10);txt1.setBounds(120, 10, 160, 30);txt2.setBounds(120, 50, 160, 30);JButton btn=new JButton(“=“);btn.setBounds(300, 50, 50, 30);btn.addMouseListener(new Mous

32、eAdapter()public void mouseClicked(MouseEvent arg0) long i=1,n=1,sum=1;n=Integer.parseInt(txt1.getText();for(i=1;i=n;i+)sum*=i;txt2.setText(sum+“););win.add(lb1);win.add(lb2);win.add(txt1);win.add(txt2);win.add(btn);win.setVisible(true);【例题 18】编写 Java 程序,完成以下要求:(1)创建窗体,窗体上有两个文本框(用户名和密码) ,两个命令按钮(登录和退

33、出) 。(2)为登录命令按钮编写事件处理,当用户点击该按钮时候,将两个文本框中的内容保存到文本文件 info.txt 中(3)为退出命令按钮编写事件处理,当用户点击该按钮时候,退出 Java 程序。import java.awt.event.*import java.io.*import javax.swing.*class ProgramJFrame win=null;JLabel lb1=null,lb2=null;JTextField txt1=null,txt2=null;JButton btn1=null,btn2=null;public Program()win=new JFram

34、e(“例题“);win.setBounds(200, 200, 300, 200);lb1=new JLabel(“用户名“); lb2=new JLabel(“密码“);lb1.setBounds(10, 10, 100, 36);lb2.setBounds(10, 50, 100, 36);txt1=new JTextField(); txt2=new JTextField();txt1.setBounds(120, 10, 120, 36);txt2.setBounds(120, 50, 120, 36);btn1=new JButton(“登录“);btn2=new JButton(“

35、退出“);btn1.setBounds(10, 90, 100, 36);btn2.setBounds(120, 90, 100, 36);btn1.addMouseListener(new MouseAdapter()public void mouseClicked(MouseEvent arg0) File f=new File(“D:info.txt“);String name=txt1.getText();String pwd=txt2.getText();try OutputStream os=new FileOutputStream(f);os.write(name.getByte

36、s();os.write(pwd.getBytes(); catch (Exception e) e.printStackTrace(););btn2.addMouseListener(new MouseAdapter()public void mouseClicked(MouseEvent arg0) System.exit(1););win.setLayout(null);win.add(lb1);win.add(lb2);win.add(txt1);win.add(txt2);win.add(btn1);win.add(btn2);win.setVisible(true);public

37、class Exam08 public static void main(String args) new Program();【例题 19】编写 Java 程序,完成以下要求:创建窗体,窗体上有一个多行文本框和一个文字内容为“读取信息”的命令按钮。为命令按钮添加事件监听,当用户点击该按钮时,读取 D 盘根目录下的 news.txt 文件内容,并将文件内容显示在多行文本框中。import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import java.io.File;import java.io.FileInpu

38、tStream;import java.io.FileNotFoundException;import java.io.InputStream;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JTextArea;class AppDemoJFrame win=null;JTextArea area=null;JButton btn=null;public AppDemo()win=new JFrame(“练习“);win.setBounds(10, 10, 480, 400);area=new JT

39、extArea();area.setBounds(10, 10, 300, 300);btn=new JButton(“读取信息“);btn.setBounds(10, 320, 100, 36);btn.addMouseListener(new MouseAdapter()public void mouseClicked(MouseEvent arg0) File f=new File(“D:news.txt“);try InputStream is=new FileInputStream(f);byte data=new byte200;is.read(data);area.setText

40、(new String(data); catch (Exception e) e.printStackTrace(););win.setLayout(null);win.add(area);win.add(btn);win.setVisible(true);public class Exam09 public static void main(String args) new AppDemo();【例题 20】按如下要求编写程序:(1)程序运行时窗体上有两个 JTextField 文本框 txt1 和 txt2,一个 JButton 命令按钮btn。(2)为命令按钮 btn 添加时事件处理,使

41、得当用户点击命令按钮时,检查文本框 txt1 中用户输入的是否为 48 位的数字。如果不是则在文本框 txt2 中显示“输入错误” ,如果是则在文本框 txt2 中显示“输入合法” 。import java.awt.event.MouseAdapter;import java.awt.event.MouseEvent;import javax.swing.JButton;import javax.swing.JFrame;import javax.swing.JLabel;import javax.swing.JTextField;class Appprivate JFrame win=nul

42、l;private JTextField txt1=null,txt2=null;private JLabel lb1=null,lb2=null;private JButton btn=null;public App(String args)JFrame win=new JFrame(args);txt1=new JTextField(10); /文本框 txt1txt2=new JTextField(10); /文本框 txt2lb1=new JLabel(“请输入 QQ 号码“);lb2=new JLabel(“检测结果“);btn=new JButton(“号码检测“); /命令按钮

43、btnwin.setSize(300, 200);win.setLocation(200, 200);win.setLayout(null);lb1.setBounds(10, 10, 100, 32);lb2.setBounds(10, 50, 100, 32);txt1.setBounds(125, 10, 120, 32);txt2.setBounds(125, 50, 120, 32);btn.setBounds(10,100,120,40);/* 请在下面空白行为命令按钮 btn 添加鼠标单击事件监听代码*/btn.addMouseListener(new MouseAdapter(

44、)Overridepublic void mouseClicked(MouseEvent arg0) String input=txt1.getText();if(input.matches(“0-94,8“)txt2.setText(“输入合法“);elsetxt2.setText(“输入错误“););win.add(btn);win.add(lb1);win.add(txt1);win.add(lb2);win.add(txt2);win.setVisible(true);public class Exer001 public static void main(String args) App app=new App(“练习一“);

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报