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

下载本文档

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

文档简介

【程序题】(题型:编程题、程序填空题)【例题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(产生的随机三位整数为:+x); /*求出产生的随机数x是否为水仙花数,并输出结果*/参考答案【例题2】编写程序,实现求一个整型数组中所有能被3整除的数的和,并且输出结果。请将下列程序补充完整。 public class Test public 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的值,并输出结果,请将下列程序补充完整。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.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(计算函数);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方法中编写程序,输出1到200之间所有能被3整除的整数,要求输出时每行输出5个整数。public class Exam05 public static void main(String args) 参考答案【例题6】实现一个名为Person的类和它的子类Employee,Employee有两个子类Faculty和Staff。要求如下:l Person类中的属性有:姓名name(String类型),地址address(String类型),电话号码telphone(String类型)和电子邮件地址email(String类型);l Employee类中的属性有:办公室office(String类型),工资wage(double类型),受雇日期hiredate(String类型);有一个返回值为double类型的方法calcTax(double r)用于计算纳税额,纳税额公式为wage*r。l Faculty类中的属性有:学位degree(String类型),级别level(int类型);有一个覆写父类的方法calcTax(),方法的纳税额计算公式为wage*r*0.5。l Staff类中的属性有:职务称号duty(String类型);参考答案【例题7】根据如下要求编写类,并完成测试类的编写(1)第一个类是抽象图形类(Shape),含有一个成员变量color(字符串类型),一个没有参数的构造方法,以及一个有一个字符串类型参数的构造方法来初始化颜色变量,还有一个返回颜色变量值的成员方法show,以及一个空方法getArea获取面积,返回值为double类型;(2)第二个类是圆形类(Circle)继承自图形类,含有一个成员变量半径r,有一个有两个参数的构造方法,来初始化颜色和半径,覆写父类方法getArea,返回值为double,获取圆的面积值。(3) 第三个类是矩形类(Rectangle)继承自图形,含有两个double类型的成员变量长a和宽b,有一个有三个参数的构造方法,来初始化颜色、长和宽,覆写父类方法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为不带参数的构造方法。 (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,为其添加一个抽象方法getName,用于返回交通工具的名称。定义一个类Car继承抽象类Traffic并实现接口Tools,求出该交通工具的运输费用,运输费用为:“距离元/公里+过路费+乘客数”,且返回的名称为“Car”。(3) 定义一个类Bus继承抽象类Traffic并实现接口Tools,求出该交通工具的运输费用,运输费用为“距离元/公里+过路费+乘客数0.2”,且返回的名称为“Bus”。(4) 定义一个ComputerFee类,为其添加一个静态方法getFee,该方法除了接收一个Tools接口类型的形参变量外,还接收元/每公里、距离、过路费、乘客数等参数,在该方法体内调用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类型)、薪水(double类型)、部门(String类型)。(2) 为员工类Employee添加一个如下构造方法,用于初始化成员变量:i 无参构造,无任何操作。ii单参构造:只传递员工号,对员工号进行初始化。iii双参构造,传递员工号,姓名,对员工号和姓名进行初始化,其中员工号通 过调用单参构造方法完成。iv四参构造,传递员工号、姓名、部门、薪水,初始化所有成员变量,其中员工 号和姓名通过调用双参构造完成。(3) 为员工类添加一个方法printInfo,用于输出员工类的相应信息。(4) 编写员工类的测试类Test,添加main方法,在main方法中编写程序创建一个员工对象:员工号为001,姓名为:Mike,部门为:开发部,薪水为:10000;调用printInfo方法输出员工的相关信息。(5)参考答案【例题11】按以下要求编写程序(1) 创建一个表示复数的类Complex。复数由两部分组成(即有两个成员变量):实部和虚部,一个复数可以表示为(a,bi),a代表实部,b代表虚部。数据类型都为double。(2) 为Complex类添加两个构造器,一个无参构造,其成员变量初始值都为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,类中有两个实例成员变量为书名(String类型)、书价(double类型)和一个类成员变量为数量(int类型,初始值为0,用于统计书的数量)。(2) 为Book类添加两个构造器(无参和两参),在无参构造方法中统计书的数量,在两参构造方法中调用无参构造器并对成员变量书名和书价进行初始化。(3) 为Book类添加一个静态方法getNum,用于返回类成员变量数量的值。(4) 为Book类添家一个方法getInfo,用于返回书名和价格。(5) 编写类进行测试Test,在该类的主方法main中定义一个含有3个元素的对象数组,并且对数组元素中的对象进行初始化(内容自行给定),然后输出对象数组的相应信息以及求出图书的数量。参考答案【例题13】按以下要求编写程序(1) 定义一个人类Person,Person类中包含4个私有的数据成员name、addr、sex、age,分别为字符串型、字符串型、字符型及整型,表示姓名、地址、性别和年龄。为Person类添加一个4参构造方法,为成员变量初始化(要求年龄在18-60岁之间方可赋值);添加一个输出方法getString返回人的相关信息。(2) 定义一个学生类Student,继承Person类,并增加成员math、english存放数学和英语成绩。为Student类添加一个6参构造方法,并重写父类的方法getString,返回学生的相关信息。(3) 定义一个Test类,添加main方法,在main方法中声明并创建一个Student类的对象,要求调用其六个参数的构造器,并调用其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 JTextArea 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 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)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() /创建窗体,窗体名称为“打开窗口”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 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,一个命令按钮。为命令按钮添加鼠标事件监听,当点击按钮时,将文本框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) JFrame win=new JFrame(简单计算器);win.setSize(400, 180);win.setLocation(400, 200);win.setLayout(null);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(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 arg0) 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.add(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和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;import 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.setSize(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 MouseAdapter()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)创建窗体,窗体上有两个文本框(用户名和密码),两个命令按钮(登录和退出)。(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 JFrame(例题);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(退出);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.getBytes();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 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.FileInputStream;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 JTextArea();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();【

温馨提示

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

评论

0/150

提交评论