java程序设计试卷(含答案) 联系客服

发布时间 : 星期五 文章java程序设计试卷(含答案)更新完毕开始阅读795e30478762caaedc33d49d

…………………………………………密…………………………………………封…………………………………………线…………………………………………… 年级: 层次: 专业: 学号: 姓名: 2015年春季学期 《Java程序设计》试卷A

题号 一 分数 二 三 四 总分 10、下列( )修饰符所定义的方法必须被子类所覆盖

A、final B、abstract C、 static D、volatile 11、下面for循环语句的循环次数为( )

for(int i=0,j=0;i=j=10;i++,j++)

A、0 B、1 C、 10 D、无限次 12、下面程序的输出结果为( )

int a,b,k;

k=(a=20,b=30,a>b?a++:b++,a+b); System.out.println(k);return 0;

A、20 B、30 C、52 D、51

13、实现( )接口可以对JTextField对象的事件进行监听和处理

A、FocusListener B、ConponentListener C、WindowListener D、ActionListener 14、JTextArea可以注册的接口是( )

A、TextListener B、ConponentListener C、WindowListener D、ActionListener

15、在Java中,一个类可同时定义许多同名的方法,这些方法的形式参数个数、类型或顺序各不相同,传回的值也可以不相同。这种面向对象程序的特性称为( )

A、隐藏 B、覆盖 C、重载 D、Java不支持此特性 16、以public修饰的类如:public class Car{…} 则Car( )

A、可被其它程序包中的类使用 B、仅能被本程序包中的类使用 C、不能被任意其它类使用 D、不能被其它类继承 17、设有下面语句:

Vector vector=new Vector(4,4); 当向vector集合中添加5个元素之后,vector.size()与vector.capacity()的输出结果

分别是( )。

A、5,4 B、4,5 C、5,8 D、8,5 18、容器Panel和Applet缺省使用的布局管理器是( )

A、FlowLayout B、BorderLayout C、GridLayout D、CardLayout 19、Java application中的主类需包含main方法,main方法的返回类型是什么( )

A、int B、float C、double D、void 20、写出以下程序的运行结果( ) import java.io.*;

一.选择(每道小题2分,合计40分)

1、有关Java语言的说法中,哪种是错误的( )

A、java是高级语言 B、java是面向过程语言 C、java是面向对象的设计语言 D、java是移植性强的语言 2、JDK是( )

A、一种全新的程序语言 B、一种程序开发辅助工具

C、一种由Java写成的,并支持Java Applet的浏览器 D、一种游戏软件 3、下列选项中,用于在定义接口时声明接口名的关键字是( ) A、package B、interface C、class D、implements

4、在编写Java Application程序时,若需要使用到标准输入输出语句,必须在

程序的开头写上( )语句。

A、 import java.awt.* ; B、 import java.applet.Applet ; C、 import java.io.* ; D、 import java.awt.Graphics ; 5、设x=40 则执行y=(++x)+(x++)+1后,x,y的结果分别为( ) A、42,80 B、41,81 C、43,82 D、42,83 6、以下对派生类的描述中不正确的是( ) 。

A、一个派生类可以作为另一个派生类的基类 B、Java中一个派生类只有一个基类

C、具有继承关系时,子类不能定义与父类同名的成员变量和方法

D、生成派生类对象时,先调用基类构造方法然后再调用派生类构造方法 7、有关Java语言的特点,哪种是错误的( )

A、多态 B、可移植 C、多线程 D、手动垃圾回收

8、一个可以独立运行的Java应用程序 ( )

A、可以有一个或多个main方法 B、最多只能有两个main方法 C、可以有一个或零个main方法 D、只能有一个main方法 9、以下不属于构造方法特征的是:( )

A、构造方法名与类名相同 B、构造方法能够继承

C、构造方法在创建对象时自动执行。 D、每一个类可以有多个构造方法

第 1 页 共 5 页

public class UseLabel

{ public static void main(String[] args) {Loop: for(int i=2; i<10; i++) { if( i%2!=0) continue Loop;

System.out.print(i+\ } } }

A、2 4 6 8 B、2 4 6 8 10 C、2 3 4 5 6 7 8 D、以上都不正确

for ( i = 0 ; i < a.length ; i ++ )

{ if (a[i]%3 == 0 ) System.out.print(a[i]+\以上程序的执行结果是____________________。 6、class Employee

{ String name; char sex; Employee(String n, char s) { This.name = n; this.sex = s; }

public String getName() { return this.name; }

二.填空(每道小题4分,合计32分)

1、以下程序的执行后x,y的值 。

int x=0,y=0; while(x<13) { y++; x=x+(++y);}

2、封装类提供的功能有________________和 ____________。 3、class Car

{ Car( ){ System.out.println(\小汽车基本价格:\万\ public void stop( )

{ System.out.println(\小汽车刹车方式\class Taxi extends Car { Taxi(float x)

{super(); System.out.println(\出租车价格:\万\

public class Test

{ public static void main(String args[]) { Taxi taxi=new Taxi(10f); taxi.stop();}}

以上程序的执行结果是____________________。 4、class SuperClass { private int a=10; protected int b=20;

public void f()

{ System.out.println(a*b);}}

public class Test extends SuperClass { int c=5;public void f()

{ System.out.println(b/c);}

public static void main(String args[])

{ SuperClass sc=new Test(); sc.f(); }} 以上程序的执行结果是____________________。 5、public class Test

{ public static void main(String args[]) { int i , k ;

int a[ ] = { 11 , 21 , 31 , 41 , 51 , 61 , 71 , 81 , 91};

public char getSex(){ return this.sex;}} class Worker extends Employee

{ char category; boolean dressAllowance; Worker(String n,char s,char c,boolean d)

{ super(n,s); category = this.c; dressAllowance =this.d; } public char getCategory()

{return this.category;} public boolean getAll()

{ return this.dressAllowance; }} class InheDemo

{ public static void main(String args[])

{ Worker w = new Worker(\ System.out.println(\工人信息\

System.out.println(\姓名 : \ If (w.getSex()==’M’)

System.out.println(\性别 :男 \Else System.out.println(\性别 :女 \

System.out.println(\类别 : \

if(w.getAll()) System.out.println(\提供服装津贴\ else System.out.println(\未提供服装津贴\以上程序的执行结果是____________________。 7、阅读以下程序

public class MainDemo

{public static void main(String[] argv)

{if(argv.length>0) {if(argv.length == 1)

{if(argv[0].equals(\ Elseif(argv[0].equals(\System.out.println(\else if(argv.length == 2) { if(argv[0].equals(\

第 2 页 共 5 页

System.out.println(\

else if(argv[0].equals(\ System.out.println(\ else System.out.println(\

else {System.out.println(\}} 编译以上程序,当在命令窗口运行java MainDemo时,输出结果为:____________。 当在命令窗口运行java MainDemo –h China时,输出结果为:____________。 8、阅读以下程序

class StaticTest { static int x=1; int y; StaticTest() { y++; } public static void main(String args[ ]){

StaticTest st=new StaticTest(); System.out.println(\ st=new StaticTest();System.out.println(\ static { x++;}}

以上程序的运行结果为:____________。

3.古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少(列出24个月)?

三.编程题(1、2题每题9分,3题10分,共28分)

1、百马百担问题, 100匹马驮100担货物,其中大马驮3担货物,中马驮2担,两匹小马驮一担。问总共有大、中、小马各多少匹?编程实现求解的算法。

2、定义一个实现常用数学运算的类MyMath,类中提供max()、min()、sum()和average()四个静态方法,在主类中对任意输入的三个整数,调用MyMath()类中的四个静态方法,求取结果并输除。

第 3 页 共 5 页

2015年春季学期《java程序设计》试卷A答案

一.选择(每道小题2分,共20道小题,合计40分)

1-5、B B B C D 6-10、C D C B B 11-15、D D D A C 16-20、A C A D A

二.填充(每道小题4分,共8道小题,合计32分)

1、x=20,y=8

2、将基本数据类型封装后当作对象进行操作; 为基本数据类型提供各种转换功能

3、小汽车基本价格:15万 出租车价格:10万 小汽车刹车方式 4、4

5、21 51 81 6、工人信息 姓名:M.John 性别:女 类别:B 提供服装津贴

7、There hava any parameter! Hello! China 8、x=2 st.y=1 st.y=1

mid=y; sma=z; } }

System.out.println(\ System.out.println(\ System.out.println(\ } }

2、定义一个实现常用数学运算的类MyMath,类中提供max()、min()、sum()和average()四个静态方法,在主类中对任意输入的三个整数,调用MyMath()类中的四个静态方法,求取结果并输除。 public class MyMath {

{ public static void main(String args[]) {int a=Integer.parseInt(args[0]); int b=Integer.parseInt(args[1]); int c=Integer.parseInt(args[2]);

System.out.println(\ System.out.println(\ System.out.println(\

System.out.println(\ public static int max(int x,int y,int z) { if(x

return x; }

public static int min(int x,int y,int z) { if(x>y) x=y; if(x>z) x=z;

return x; }

public static int sum(int x,int y,int z) { return x+y+z; }

public static int average(int x,int y,int z) { return (x+y+z)/3; } }}

三、编程题(1、2题每题9分,3题10分,共28分)

1、百马百担问题, 100匹马驮100担货物,其中大马驮3担货物,中马驮2担,两匹小马驮一担。问总共有大、中、小马各多少匹?编程实现求解的算法。 public class Horse

{ public static void main(String args[]) { int big=1,mid=1,sma=1; for(int x=1;x<100;x++) for(int y=1;y<100;y++)

for(int z=2;z<100;z++,z++) { if(x*3+y*2+z/2==100) if(x+y+z==100) { big=x;

第 4 页 共 5 页

3、

public class lianxi01 {

public static void main(String[] args) {

System.out.println(\第1个月的兔子对数: 1\System.out.println(\第2个月的兔子对数: 1\int f1 = 1, f2 = 1, f, M=24;

for(int i=3; i<=M; i++) { f = f2;

f2 = f1 + f2; f1 = f;

System.out.println(\第\个月的兔子对数: \ }}}

第 5 页 共 5 页