Java期末复习资料程序题部分_第1页
Java期末复习资料程序题部分_第2页
Java期末复习资料程序题部分_第3页
Java期末复习资料程序题部分_第4页
Java期末复习资料程序题部分_第5页
已阅读5页,还剩25页未读 继续免费阅读

下载本文档

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

文档简介

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-10

3、03 的值,并输出结果,请将下列程序补充完整。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.sw

4、ing.*;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);b

5、tn =new JButton( " 计算函数" );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 sta

6、tic void main(String args) new fun();【例题5】在 main 方法中编写程序,输出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

7、( String 类型)和电子邮件地址email ( String 类型) ;Employee 类中的属性有:办公室 office ( String 类型) , 工资wage( double 类型) ,受 雇 日 期 hiredate ( String 类 型 ) ; 有 一 个 返 回 值 为 double 类 型 的 方 法 calcTax(double r) 用于计算纳税额,纳税额公式为wage*r。Faculty 类中的属性有:学位degree( String 类型) ,级别 level ( int 类型) ;有一个覆写父类的方法calcTax() ,方法的纳税额计算公式为wage*r

8、*0.5 。Staff 类中的属性有:职务称号duty ( String 类型) ;参考答案【例题7】根据如下要求编写类,并完成测试类的编写( 1)第一个类是抽象图形类(Shape) ,含有一个成员变量color (字符串类型),一个没有参数的构造方法,以及一个有一个字符串类型参数的构造方法来初始化颜色变量,还有一个返回颜色变量值的成员方法show, 以及一个空方法getArea 获取面积,返回值为double类型;( 2)第二个类是圆形类(Circle )继承自图形类,含有一个成员变量半径r,有一个有两个参数的构造方法,来初始化颜色和半径,覆写父类方法getArea ,返回值为double

9、,获取圆的面积值。( 3)第三个类是矩形类(Rectangle )继承自图形,含有两个double 类型的成员变量长 a 和宽b, 有一个有三个参数的构造方法,来初始化颜色、长和宽, 覆写父类方法getArea ,返回值为double ,获取矩形的面积值。参考答案【例题8】定义 student 类,其中包括四个私有变量(name、 age、 sex、 score ) 、三个构造方法和show() 方法。各成员的含义如下。(1) 变量 name为字符串类型String ,用于存储学生的姓名。(2) 变量age 为int 类型,用于存储学生的年龄。(3) 变量sex 为boolean 类型,用于存

10、储学生的性别,男生为false ,女生为true 。(4) 变量 score 为 double 类型,用于存储学生的成绩。(5) 构造方法1 为不带参数的构造方法。(6) 构造方法2 包括三个参数,用于为变量(name、age、sex)赋值。(7) 构造方法3 包括四个参数,用于为变量(name、age、sex 和score )赋值。(8) Show() 方法无参数,用于输出变量(name、 age、 sex 和 score )的值。【例题 9】按以下要求编写程序( 1 ) 定义一个接口Tools ,为其添加一个返回值为double 的 computerFee 方法,用于计算运输费用,该方法含

11、有四个参数distance,per,tolls,number ,分别表示元/每公里、距离、过路费、乘客数。( 2) 定义一个抽象类Traffic ,为其添加一个抽象方法getName,用于返回交通工具的名称。定义一个类Car 继承抽象类Traffic 并实现接口Tools ,求出该交通工具的运输费用,运输费用为: “距离×元 / 公里 +过路费+乘客数”,且返回的名称为“Car”。( 3) 定义一个类Bus 继承抽象类Traffic 并实现接口Tools , 求出该交通工具的运输费用,运输费用为“距离×元 / 公里+过路费+乘客数×0.2 ”,且返回的名称为“Bu

12、s”。( 4) 定义一个ComputerFee 类,为其添加一个静态方法getFee,该方法除了接收一个Tools 接口类型的形参变量外,还接收元/ 每公里、距离、过路费、乘客数等参数,在该方法体内调用Tools 接口类型形参变量的computerFee 方法( 5) 定义一个测试类Test,为其添加main 方法,在main 方法中分别创建Car 类、 Bus类的实例对象。然后编写程序代码调用ComputerFee 类的 getFee 方法并将Car 类和 Bus类的实例对象分别作为实参传入,同时传入的其它四个参数的值分别为( 100, 20, 200,30)和(200, 10, 300,

13、40) 。参考答案【例题 10】按以下要求编写程序1) ) 定义一个员工类Employee,类中与四个私有数据成员:员工号(String 类型 ) 、姓名( String 类型 ) 、薪水(double 类型 ) 、部门(String 类型 ) 。2) 为员工类Employee 添加一个如下构造方法,用于初始化成员变量:i 无参构造,无任何操作。ii 单参构造:只传递员工号,对员工号进行初始化。iii 双参构造,传递员工号,姓名,对员工号和姓名进行初始化,其中员工号通过调用单参构造方法完成。iv 四参构造,传递员工号、姓名、部门、薪水,初始化所有成员变量,其中员工号和姓名通过调用双参构造完成。

14、3) 为员工类添加一个方法printInfo ,用于输出员工类的相应信息。4) 编写员工类的测试类Test ,添加 main 方法,在main 方法中编写程序创建一个员工对象: 员工号为001 , 姓名为: Mike, 部门为: 开发部, 薪水为:10000; 调用 printInfo方法输出员工的相关信息。5)参考答案11】按以下要求编写程序( 1) 创建一个表示复数的类Complex。复数由两部分组成(即有两个成员变量):实部和虚部, 一个复数可以表示为( a, bi ) , a 代表实部,b 代表虚部。数据类型都为double 。( 2) 为 Complex 类添加两个构造器,一个无参构

15、造,其成员变量初始值都为0,另一个带两个参数的构造器,为其两个变量进行初始化。( 3) 为 Complex 类添加一个方法add,实现两个复数的加法运算。操作的规则是:(a,bi)+(c,di)=(a+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

16、 ,类中有两个实例成员变量为书名(String 类型 )、书价(double 类型)和一个类成员变量为数量(int 类型,初始值为0,用于统计书的数量 )。( 2) 为 Book 类添加两个构造器(无参和两参),在无参构造方法中统计书的数量,在两参构造方法中调用无参构造器并对成员变量书名和书价进行初始化。( 3) 为 Book 类添加一个静态方法getNum,用于返回类成员变量数量的值。( 4) 为 Book 类添家一个方法getInfo,用于返回书名和价格。( 5) 编写类进行测试Test,在该类的主方法main 中定义一个含有3 个元素的对象数组,并且对数组元素中的对象进行初始化(内容自行

17、给定),然后输出对象数组的相应信息以及求出图书的数量。【例题13】按以下要求编写程序( 1 )定义一个人类Person , Person 类中包含4 个私有的数据成员name、 addr、 sex、 age,分别为字符串型、字符串型、字符型及整型,表示姓名、地址、 性别和年龄。为 Person类添加一个4 参构造方法,为成员变量初始化(要求年龄在18-60 岁之间方可赋值) ;添加一个输出方法getString 返回人的相关信息。( 2)定义一个学生类Student ,继承 Person 类,并增加成员math、 english 存放数学和英语成绩。为Student 类添加一个6 参构造方法,

18、并重写父类的方法getString ,返回学生的相关信息。( 3) 定义一个Test 类,添加main 方法,在main 方法中声明并创建一个Student 类的对象,要求调用其六个参数的构造器,并调用其getString 方法输出信息。参考答案【例题14】程序填空题范例,编写程序,设计一个简单的用户界面,窗口中包含两个组件:JTextArea 和 JButton ,要求实现点击按钮时,将JTextArea 组件中的内容保存到t1.txt文件,存放路径为“D:t1.txt ”。请将下列程序补充完整。import javax.swing.*;import java.awt.event.*;imp

19、ort java.io.*;import java.awt.*;class MyFrame private JFame f;private JButton b;private JTextArea ta;public MyFrame()/创建窗体,窗体名称为“保存窗口”ta=new JTextArea(8,10);/创建按钮,按钮标题为“保存”/ 利用BorderLayout 布局,添加文本域组件于窗体的中心/ 利用BorderLayout 布局,添加按钮组件于窗体的南部设置窗体大小(300, 200)/f.setLocation(300,300);/f.addWindowListener(ne

20、w WindowAdapter()public void windowClosing(WindowEvent e)System.exit(1););b. /public void 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)设置窗体可见注册按钮监视器创建文件创建

21、输出流写入文件new MyFrame();【例题 15】编写程序,设计一个简单的用户界面,窗口中包含两个组件:JTextArea 和 JButton , 要求实现点击按钮时,打开一个t1.txt 文件,存放路径为“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()/创建窗体,窗体名称为 “打开窗

22、口”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 void actionPerformed(ActionEvent

23、arg0) ta.setText(null);/创建文件if(file!=null) try/创建输入流byte b=new byte(int)file.length();/读取文件ta.append(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 ,一个命令按钮。

24、为命令按钮添加鼠标事件监听,当点击按钮时,将文本框txt1 和 txt2 中输入的数字进行求和,并将结果显示在文本框txt3 中。import java.awt.event.MouseEvent;import 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)

25、简单计算器");请输入数字1");请输入数字2");求和结果");JFrame win=new JFrame(" win.setSize(400, 180);win.setLocation(400, 200); win.setLayout(null);JLabel l1=new JLabel(" JLabel l2=new JLabel(" JLabel l3=new JLabel(" l1.setSize(160, 30);l2.setSize(160, 30); l3.setSize(160, 30);l1.s

26、etLocation(10, 10); l2.setLocation(10, 50);l3.setLocation(10, 90);final JTextField txt1=new JTextField(10);final JTextField txt2=new JTextField(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=

27、new JButton("=");btn.setBounds(300, 90, 50, 30);/* 在下面空白行处添加程序代码*/btn.addMouseListener(new MouseListener()public void mouseClicked(MouseEvent arg0) int a=Integer.parseInt(txt1.getText();int b=Integer.parseInt(txt2.getText();txt3.setText(a+b)+"");public void mouseEntered(MouseEven

28、t arg0) public void mouseExited(MouseEvent arg0) public void mousePressed(MouseEvent arg0) public void mouseReleased(MouseEvent arg0) );win.add(l1);win.add(l2);win.add(l3);win.add(txt1);win.add(txt2);win.add(txt3);win.add(btn);win.setVisible(true);【例题17】设计如下所示窗体,窗体上有两个标签组件(LB1 和 LB2) 、两个 JTextField

29、文本框(txt1和 txt2 ) 、一个命令按钮btn,按如下要求完成程序设计。( 1)设置窗体标题为“计算 n 的阶乘” ,窗体大小360, 180,窗体位置300,300( 2)设置 LB1 和 LB2 大小均为(宽160,高30) , LB1 的位置为(10, 10), LB2 的位置为( 10, 50)( 3)设置 txt1 和 txt2 的大小均为宽160, 高 30 , txt1 的位置为(120, 10) txt2 的位置为(120,50)( 4)设置命令按钮btn 的显示字符为” =”,设置其大小为50, 30,显示位置为300, 50( 5)为命令按钮btn 添加鼠标点击事件

30、,当按下按钮时,计算 txt1 中输入的整数的阶乘,并将结果显示在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;public class Exam11 public static void main(String args) JFrame win=new JFrame(&quo

31、t; 计算 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.setSize(160, 30);lb1.setLocation(10, 10);lb2.setLocation(10, 50);final JTextField txt1=new JTextField(1

32、0);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 MouseAdapter()public void mouseClicked(MouseEvent arg0) long i=1,n=1,sum=1;n=Integer.parseInt(t

33、xt1.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)创建窗体,窗体上有两个文本框(用户名和密码),两个命令按钮(登录和退出)( 2)为登录命令按钮编写事件处理,当用户点击该按钮时候,将两个文本框中的内容保存到文本文件info.txt 中( 3)为退出命令按钮编写事件处理,

34、当用户点击该按钮时候,退出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 JFrame(" 例题 ");win.setBounds(200, 200, 300, 200);lb1=new JLabel(" 用户

35、名 "); 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("退出 ");btn1.setBounds

36、(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.getBytes();os.

37、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 class E

38、xam08 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.FileInputStream;import ja

39、va.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 JTextAr

40、ea();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(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 ) 程序运行时窗体上有两

温馨提示

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

最新文档

评论

0/150

提交评论