试题库程序编写题.docx
《试题库程序编写题.docx》由会员分享,可在线阅读,更多相关《试题库程序编写题.docx(57页珍藏版)》请在冰豆网上搜索。
![试题库程序编写题.docx](https://file1.bdocx.com/fileroot1/2022-12/1/1c63d0e0-afaf-48c4-9d54-72cb9efef855/1c63d0e0-afaf-48c4-9d54-72cb9efef8551.gif)
试题库程序编写题
1、试题序号:
601
2、题型:
程序编写题
3、难度级别:
2
4、知识点:
类和对象的创建,构造函数(4-1)
5、分值:
10
6、所需时间:
15
7、试题关键字:
8、试题内容:
编写一个矩形类Rect,包含:
两个protected属性:
矩形的宽width;矩形的高height。
两个构造器方法:
(1)一个带有两个参数的构造器方法,用于将width和height属性初化;
(2)一个不带参数的构造器,将矩形初始化为宽和高都为10。
两个方法:
(1)求矩形面积的方法area()
(2)求矩形周长的方法perimeter()
9、答案内容:
classRect{
protecteddoublewidth,height;
publicRect(doublewidth,doubleheight){
this.width=width;
this.height=height;
}
publicRect(){
width=10;
height=10;
}
publicdoublearea(){
returnwidth*height;
}
publicdoubleperimeter(){
return2*(width+height);
}
}
10、评分细则:
属性定义:
3分;
构造器方法:
3分;
方法实现:
4分;
1、试题序号:
602
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
类和对象的创建,构造函数(4-1)
5、分值:
10
6、所需时间:
15
7、试题关键字:
8、试题内容:
定义一个Person类,可以在应用程序中使用该类。
成员属性:
Person类的属性(变量):
姓名:
name,字符串类型:
String;
性别:
sex,字符型:
char;
年龄:
age,整型:
int。
3个重载的构造函数:
publicPerson(Strings)//设置姓名
publicPerson(Strings,charc)//调用本类的构造函数Person(Strings),设置性别
publicPerson(Strings,charc,inti)//调用本类的构造函数PersonPerson(Strings,char),设置年龄
一个成员方法:
publicStringtoString()//获得姓名、性别和年龄
利用定义的Person类,请实例化对象,输出下面结果:
姓名:
张三性别:
男年龄:
21
9、答案内容:
publicclassPerson
{
Stringname;
charsex;
intage;
publicPerson()
{}
publicPerson(Strings)
{
name=s;
}
publicPerson(Strings,charc)
{
this(s);
sex=c;
}
publicPerson(Strings,charc,inti)
{
this(s,c);
age=i;
}
publicStringtoString()
{
Strings="姓名:
"+name+"性别:
"+sex+"年龄:
"+age;
returns;
}
}
10、评分细则:
类名、类声明正确1分
属性定义正确1分
构造方法publicPerson(Strings)编写正确2分
构造方法publicPerson(Strings,char)编写正确2分
构造方法publicPerson(Strings,charc,inti)编写正确2分
方法publicStringtoString()编写正确2分
1、试题序号:
603
2、题型:
程序编写题
3、难度级别:
4
4、知识点:
继承(5-4),多态(5-3)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
编写一个具有继承关系的java程序,要求如下:
a)必须有this和super的使用;
b)必须在程序中体现出方法的重载和覆盖.
9、答案内容:
classchild
{
child()
{
System.out.println("childdefault");
}
child(inti)
{
this();
System.out.println("int");
}
voidf()
{
System.out.println("f()");
}
}
classParentextendschild
{
Parent()
{
super();
System.out.println("parentdefault");
}
Parent(inti)
{
super(i);
System.out.println("parentint");
}
voidf()
{
System.out.println("parentf()");
}
}
publicclassFoo
{
publicstaticvoidmain(String[]args)
{
//Parentp=newParent();
Parentp=newParent
(1);
p.f();
}
}
10、评分细则:
其中this和super的使用各占2分,继承的实现占2分,覆盖和重载各占2分。
1、试题序号:
604
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
文件的输入输出(14-2)
5、分值:
10
6、所需时间:
15
7、试题关键字:
8、试题内容:
编写一个java程序,实现拷贝文件”test.txt”中的所有内容到”test1.txt”中.
9、答案内容:
importjava.io.*;
publicclassFoo
{
publicstaticvoidmain(String[]args)
{
try
{
Strings=null;
FileReaderfr=newFileReader("test.txt");
BufferedReaderbr=newBufferedReader(fr);
FileWriterfw=newFileWriter("test1.txt");
BufferedWriterbw=newBufferedWriter(fw);
while((s=br.readLine())!
=null)
{
bw.write(s);
bw.flush();
bw.newLine();
}
}catch(IOExceptione)
{
e.printStackTrace();
}
}
}
10、评分细则:
其中import语句占2分
Try语句块的书写占2分
FileReader和FileWriter的构造各占1分
复制语句的完成占3分
close语句的书写占1分
1、试题序号:
605
2、题型:
程序编写题
3、难度级别:
5
4、知识点:
抽象类,接口(5-5)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
编写一个java程序,其中包含至少一个抽象类以及一个接口,再定义一个类实现抽象类以及接口中的方法.
9、答案内容:
interfaceA
{
intf();
}
abstractclassB
{
abstractintg();
}
publicclassFooextendsBimplementsA
{
inta=2,b=1;
publicintf()
{
return(a+b);
}
publicintg()
{
return(a*b);
}
publicstaticvoidmain(String[]args)
{
Foofoo=newFoo();
System.out.println(foo.f());
System.out.println(foo.g());
}
}
10、评分细则:
接口定义正确得2分,抽象类定义正确得2分,继承抽象类并实现接口正确得2分。
实现接口中的方法得2分,实现抽象类中的方法得2分
1、试题序号:
606
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
基本输入输出流(14-1),while(3-2)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
编写一个java程序,实现从键盘输入一个整数,输出该整数的最高位数.
9、答案内容:
importjava.io.*;
publicclassFoo
{
publicstaticvoidmain(String[]args)
{
try
{
InputStreamReaderisr=newInputStreamReader(System.in);
BufferedReaderbr=newBufferedReader(isr);
Strings=br.readLine();
inti=Integer.parseInt(s);
while(i>10)
{
intj=i%10;
i=i/10;
}
System.out.println(i);
}catch(IOExceptione)
{
e.printStackTrace();
}
}
}
10、评分细则:
import语句占2分,try语句块占2分,从标准输入中读取整数代码段的实现占4分,计算占2分。
1、试题序号:
607
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
java程序的运行步骤(1-4)
5、分值:
10
6、所需时间:
16
7、试题关键字:
8、试题内容:
分别用javaapplication和javaapplet两种方式打印出”helloworld”;
9、答案内容:
publicclassFoo
{
publicstaticvoidmain(String[]args)
{
System.out.println("helloworld");
}
}
importjava.applet.Applet;
importjava.awt.*;
publicclassFooextendsApplet
{
publicvoidpaint(Graphicsg)
{
g.drawString("helloworld",50,50);
}
}
10、评分细则:
其中application和Applet各占5分。
在application中,类的定义正确占2分,main函数定义正确占2分,打印语句占1分。
在applet中,import语句占1分,applet类的构造占2分,paint方法的书写占2分。
1、试题序号:
608
2、题型:
程序编写题
3、难度级别:
4
4、知识点:
java程序的运行步骤(1-4)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
分别用application和Applet的方式写出打印HelloWorld的代码。
并针对不同的方式书写相应的运行命令。
9、答案内容:
PublicclassTest
{
Publicstaticvoidmain(String[]args)
{
System.out.prinln(“Helloworld”);
}
}
JavacTest.java
JavaTest
importjava.applet.Applet;
publicclassTestextendsApplet
{
Publicvoidpaint(Graphicsg)
{
g.drawString(“Helloworld”,20,20);
}
}
//
javacTest.java
appletviewerTest.java
10、评分细则:
其中application和applet各占5分,在application中,代码的书写正确占3分,javac命令的书写正确占1分,java命令的书写正确占1分。
在applet中,代码的书写占2分,html标签的书写占1分,javac命令的书写占1分,appletviewer的书写占1分。
1、试题序号:
609
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
类和对象(4-1)
5、分值:
10
6、所需时间:
15
7、试题关键字:
8、试题内容:
写出一个Point(点)类,该类具有x,y(表示点的横、纵坐标)两个属性,并定义两个个构造方法,一个无参数,将x,y均设置为0,另一对坐标值为参数,设置x,y为给定坐标值。
该类的show方法输出该点的坐标值。
9、答案内容:
classPoint
{intx,y;
Point(){x=0;y=0;}
Point(intx,inty){this.x=x;this.y=y;}
publicvoidShow(){System.out.print("坐标为:
("+x+","+y+”)”);}
}
10、评分细则:
类的定义得1分,不带参数的构造函数的定义占3分,带参数的构造函数的定义占3分,show方法的书写占3分
1、试题序号:
610
2、题型:
程序编写题
3、难度级别:
4
4、知识点:
类和对象,构造函数(4-1)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
设计并测试一个计算机类,它包括如下内容:
1.该计算机包含属性:
品牌,颜色,cpu型号,硬盘价格以及方法:
打开,关闭
2.为该计算机类书写一个不带参数的构造函数
3.为计算机重载一个带参数的构造函数。
9、答案内容:
publicclassComputer
{
Stringname;
Stringcolor;
Stringcpu;
intprice;
publicvoidopen()
{
//.......
}
publicvoidclose()
{
//.........
}
publicComputer()
{
//.......
}
publicComputer(intname)
{
//........
}
}
10、评分细则:
类的定义占2分,数据成员的书写占2分,成员方法的书写占2分,两个构造函数各占2分。
1、试题序号:
611
2、题型:
程序编写题
3、难度级别:
4
4、知识点:
接口(5-5)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
定义一个接口Volume,其中包含一个计算机体积的抽象方法calculateVomume,然后设计cricle和Rectangle两个类都实现接口中的这个方法。
分别结算球体和长方形得体积。
9、答案内容:
interfaceVolume
{
floatcalculateVolume();
}
classCircleimplementsVolume
{
privatefloatx;
privatefloaty;
privatefloatradius;
Circle(floatx,floaty,floatradius)
{
this.x=x;
this.y=y;
this.radius=radius;
}
publicfloatcalculateVolume()
{
return((float)Math.PI*radius*radius*radius*4/3)
}
}
classRectangleimplementsVolume
{
privatefloatlength;
privatefloatwidth;
privatefloatheight;
Circle(floatlength,floatwidth,floatheight)
{
this.length=length;
this.width=width;
this.height=height;
}
publicfloatcalculateVolume()
{
return(length*width*height);
}
}
10、评分细则:
接口的定义2分,两个类的定义各占2分,方法的实现各占2分
1、试题序号:
612
2、题型:
程序编写题
3、难度级别:
4
4、知识点:
类和对象,构造函数(4-1)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
编写一个类实现银行账户(bankaccount)的概念。
1.银行账户的属性有“账号”、“储户姓名”、“储户身份证号”、“日期”、“金额”、“存款余额"、“累计余额"。
银行账户的方法有“存款”、“取款"、等。
2.编写一个带有默认构造函数(也就是没有任何参数)的类,在其中显示一些信息,
然后为此类产生一些对象。
3.使用刚才定义的类创建几个实例,然后通过实例来访问其中的变量和方法来完成一定的功能。
9、答案内容:
importjava.util.*;j
classAccount{
finalintMax=5;//操作的次数
privateinttop;//储户账目管理的指针
privateintAc_id;//账号
privateStringAc_name;//储户姓名
privatelongAc_card;//储户身份证号
privateStringAc_date[]=newString[Max];//日期t
privateintAc_money[]=newint[Max];//金额
privateintAcrest[]=newint[Max];//余额
privatestaticintAc_sum=0;//累计余额
publicAccount()//构造函数,设置各参数
{
top=0;//储户账目管理的指针
Ac_id=0;//账号
Ac_name=“”;//储户姓名
Ac_card=0;//储户身份证号
}
voidAc_in(StringAc_name,StringaAc_date,intaAc_money)//存款方法
{
Ac_date[top[=aAc_date;
Ac_money[top]=aAc_money;
Ac_sum=Ac_sum+aAc_money;
Ac_rest[top]=Ac_sum;
System.out.println(“储户姓名”+Ac_name+“日期”+Ac_date[top]+“存入”+
Ac_money[top]+“存款余额”+Ac_rest[top]);.
top++;
}
voidAc_out(StringAc_name,StringaAc_date,intaAc_money)//定义存款的方//法
{
Ac_date[top]=aAc_date;
Ac_money[top]=-aAc_money;
Ac_sum=Ac_sum-aAc_money;.
Ac_rest[top]=Ac_sum;
System.out.println(”储户姓名”+Ac_name+“日期”+Ac_date[top]+“取出”+
(-Ac_money[top])+“存款余额”+Ac_rest[top]);
top++;
}
}
puDllcclassBankAccount
{
publicstaticvoidmain(String[】args)
{
//利用实例,调用储蓄用户
Accountzhang=newAccount();
zhang.Ac_in(“张梁”,“2003.6.6”,3000);
zhang.Ac_out(“张梁”,“2003.6.8”,2000),
zhang.Ac_in(“张梁”,“2003.7.7",3000);
zhang.Ac_out(“张梁",“2003.7.9”,1500);
}
}
10、评分细则:
其中类的定义1分,变量定义1分,2个方法定义各占2分。
构造方法占2分,对方法的调用占2分。
1、试题序号:
613
2、题型:
程序编写题
3、难度级别:
3
4、知识点:
继承(5-4)
5、分值:
10
6、所需时间:
20
7、试题关键字:
8、试题内容:
编写一个Java应用程序,设计一个运输工具类Trartspoft,包含的成员属性有:
速度、载重量;汽车类Vehicle是Transpoft的子类,其中包含的属性有:
车轮个数和车重;飞机Airplane类是Transport的子类其中包含的属性有:
机型和发动机数量,每个类都有相关数据的输出方法。
运输工具Transport是超类,Vehicle类和Airplane类是它的子类。
在设计时将公共的
属性和方法放在超类Transport中。
9、答案内容:
classTransport
{
intpace;//速度
floatload;//载重量
Transport(intapace,floataload){
pace=apace;
load=aload;
voidshow()
{
System.out.println(“速度”+pace+“公里/小时”);
System.out.println(“载重量”+load+“Kkg”);
}
}
}
classVehicleextendsTransport//定义汽车类
{
intwheels;//车轮数
floa