java程序设计期末复习题

2018-11-27 16:43

第一章 JAVA概述

1、 Java语言采用面向对象的思想编程,具有跨平台、分布式、多线程等优点。( )

2.Java语言是基于__________________计算的计算机语言;TCP/IP协议的编程接口叫做________________________类。 3、Java语言是( ) A、面向问题的解释型高级编程语言 B、面向机器的低级编程语言

C、面向过程的编译型高级编程语言 D、面向对象的解释型高级编程语言 1. Java语言有什么特点?

第二章 基本语法

1、以下哪个不是Java的关键字?( ) A.do B.try C.final D.While 2、以下哪项标识符是不合法的。( ) A.String B.$1 C.x D.3_a

3、以下哪个修饰符可用于定义成员常量?( ) A.final B.static C.abstract D.const 4.以下选项中,合法的赋值语句是( )。 A) a = = 1; B) ++ i;

C) a=a + 1= 5; D) y = int ( i );

5.若所用变量都已正确定义,以下选项中,非法的表达式是( )。 A) a != 4||b==1 B) 'a' % 3 C) 'a' = 1/2 D) 'A' + 32

6.若a和b均是整型变量并已正确赋值,正确的switch语句是( )。 A) switch(a+b); B) switch( a+b*3.0 ) { ?? } { ?? } C) switch a D) switch ( a%b )

{ ?? } { ?? } 7.下列语句序列执行后,j 的值是( )。 int j=9, i=6; while( i-- >3 ) --j;

A) 5 B) 6 C) 7 D) 8

8.现有一变量声明为boolean aa;下面赋值语句中正确的是( )。 A)aa=false; B)aa=False; C)aa=\

9.设 i,j 为类 x 中定义的 double 型变量名,下列 x 类的构造函数中不正确的是( )。 A) double x(double k ){ i=k; return i; } B) x(double m, double n ){ i=m; j=n; } C) x( ){i=0;j=0 }

D) x(double k ){ i=k; }

10. 设 i、j、k 为类 x 中定义的 int 型变量名,下列类 x 的构造函数中不正确的是( )。 A) x( int m){ ... } B) void x( int m){ ... }

C) x( int m, int n){ ... } D) x( int h,int m,int n){ ... } 11、对于下列代码: public class Example{ String str=new String(\ char ch[]={'d','b','c'}; public static void main(String args[]){ Example ex=new Example(); ex.change(ex.str,ex.ch); System.out.println(ex.str+\ } public void change(String str,char ch[]){ str=\ } }

输出结果是: ( ) A) hello and d B) hello and a C) world and d D) world and a 12、某个main()方法中有以下代码: String s1,s2; int[] numbers; int num; num=15;

boolean switcher = false;

下列哪个说法是正确的? ( ) A)声明了1个基本类型变量和2个引用变量

B)声明了2个基本类型变量和2个引用变量 C)声明了2个基本类型变量和3个引用变量 D)声明了3个基本类型变量和3个引用变量 13、某个main()方法中有以下代码: double[] num1; double num3=2.0; int num2=5;

num1=new double[num2+1]; num1[num2]=num3;

请问以上程序编译运行后的结果是 ( ) A) num1指向一个有5个元素的double型数组 B) num2指向一个有5个元素的int型数组 C) num1数组的最后一个元素的值为2.0 D) num1数组的第3个元素的值为5 14、考察下列程序代码: final int BASE=10; int nubmer;

下列哪个表达式可以求出number的最后一位数字? ( ) A) number - BASE B) BASE / number C) BASE % number D) number % BASE

15、某个main()方法中有以下的声明: final int MIN=0; final int MAX=10; int num=5;

下列哪个语句可以用来表示”num的值大于等于MIN并且小于等于MAX” ( ) A)!(numMAX) B) num>=MIN && num<=MAX C) num>MIN || num<=MAX D) num>MIN || num

public void myMethod1(int num1, char letter)

下列哪个描述是正确的? ( ) A)这个方法有个int型的参数,它的形式参数是letter B)这个方法有个int型的参数,它的形式参数是num1

C)这个方法有个char型的参数,它的实际参数是myMethod1 这个方法是一个构造方法

17.有以下方法的定义,请选择该方法的返回类型( D )。 ReturnType method(byte x, float y) { return (short)x/y*2; }

A、byte B、short C、int D、float

18、以下由do-while语句构成的循环执行的次数是( ) int k = 0;

do { ++k; }while ( k < 1 ); A、一次也不执行 B、执行1次 C、无限次

D、有语法错,不能执行

19.下面是一个类的定义。 class ____________ // 定义名为myclass的类 {

__________ var=666; int getvar() { return var; } }

20、阅读下面的程序,程序保存为Test.java: 1) public class Test 2) {

3) public static void main(String[] args) 4) {

5) System.out.println(args[2]); 6) } 7) }

以上程序经编译后用java Test 1 2 3 运行得到的输出结果是什么? 21、以下程序段的输出结果为 Message Four 。 int x=0,y=4, z=5; if ( x>2){ if (y<5){ System.out.println(“Message one”); } else { System.out.println(“Message two”); } } else if(z>5){ System.out.println(“Message three”); } else { System.out.println(“Message four”); }

22、设x,y,z的值分别为ture、false和false,试计算下列逻辑表达式的值: (1) x &&y||!z&&ture (2) !x||!y&&!z

(3) (!x&&!y)||(!y&&!z) (4) x&&y||true&&!z

23、阅读下面的程序,程序保存为Test.java: 8) public class Test 9) {

10) public static void main(String[] args) 11) {

12) System.out.println(args[2]); 13) } 14) }

以上程序经编译后用java Test 1 2 3 运行得到的输出结果是什么? 24、阅读下面的程序:

① public class Test{

② public static void main(String[] a){ ③ int i = Integer.parseInt(a[0]); ④ switch (i) {

⑤ case 1:System.out.println(\⑥ case 2:System.out.println(\⑦ case 3:System.out.println(\⑧ case 4:System.out.println(\⑨ } ⑩ } ? }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,用java Test 2 运行得到的输出结果是什么?

25.设int类型变量x和y分别初始化为3和100,下列语句的循环体共执行几次?执行完下列语句后x和y的值分别是多少? (1) while(x<=y) x=2*x;

(2) while(y/x>5) if(y-x>25) x=x+1; else y=y/x; (3) do{x=2*x;} while(x

(4) do{x=y/x;y=y-x;}while(x>=y);

(5) do{y=y/x-1; if(y>=x) y=x;} while(y>=1);

26、编写一个Java应用程序,在屏幕上输出“Welcome to Java”。

27、根据以下的设计要求编写java源代码。 类名: Circle

实例数据(均为private):

radius(double) //圆的半径 方法:

构造方法(没有参数,设置radius的值为10.0)

setRadius(有一个double参数,将radius的值设为这个新值), getRadius (没有参数,返回radius的值)

sameSize(有一个参数,是另一个Circle对象的引用,如果两个Circle对象的radius的差小于0.001,则返回true) 28、分别利用for、while、do~while编写计算正整数n1到n2的累加和。 11、编写一个编程,给定一个t的值(t的值也可通过命令行输入),按下式计算y值并输出,要求分别写作if语句和switch语句。 t2-1 0≤t<1 t3-2·t-2 1≤t<3 y= t2-t·sint 3≤t<5 t+1 5≤t<7 t-1 其它

29、编写一个java程序Suansu.java,定义两个整型变量a和b,使用构造函数初始化a为10,b为5,并定义求出a与b的和(方法名为AddAB)、差(方法名为SubAB)、积(方法名为MultiAB)、商 (方法名为DivAB)的方法。 用另一个java程序TestSuansu.java测试Suansu.java定义的方法,并在屏幕上输出结果。 30.水仙花数是指其个位、十位、百位三个数的立方和等于这个数本身,求出所有水仙花数。 31.试利用for循环,计算1+2+3+4+5+?+100的总和。

32.利用do?while循环,计算1!+2!+3!+?+100!的总和。 33.使用循环嵌套,编写一个输出如下图形的程序: * * * * * * * * * * * * * * *

第三章 类和对象

1、在编写实现文件读写功能的Java程序时,需要在程序的开头写上语句( A.import java.applet.* ; B.import java.awt.* ;

C.import java.io.* ; D.import java.awt.event.* ; 2.有一个类A,以下为其构造函数的声明,其中正确的是( )。 A)void A(int x){...} B)A(int x){...} C)a(int x){...} D)void a(int x){...}

3.下列方法定义中,正确的是( )。

A) int x( int a,b ) B) double x( int a,int b) { return (a-b); } { int w; w=a-b; } C) double x( a,b ) D) int x( int a,int b) { return b; } { return a-b; } 4. 下列类定义中,不正确的是( )。 A) class x { .... }

B) class x extends y { .... }

C) static class x implements y1,y2 { .... } D) public class x extends Applet { .... } 5、对于下列代码:

public class Parent {

public int addValue( int a, int b) { int s; s = a+b; return s; } }

class Child extends Parent { }

下述哪些方法可以加入类Child? ( ) A) int addValue( int a, int b ){// do something...}

B) public void addValue (int a, int b ){// do something...} C) public int addValue( int a ){// do something...}

D) public int addValue( int a, int b ) {//do something...} 6、阅读下面的程序,程序保存为Test.java: 1) public class Test 2) {

3) short mValue;

4) public static void main(String[] args) 5) {

6) int a = 32; 7) int b = 56;

8) Test os = new Test(a+b); 9) os.Show( ); 10) }

)。 11) protected Test(short aValue) { mValue = aValue; } 12) public void Show( ) { System.out.println(mValue); } 13) }

上面的程序编译是否成功?如果编译出错,指出哪行出错,并说明理由;如果编译正确,运行结果是什么? 7、在编写实现文件读写功能的Java程序时,需要在程序的开头写上语句( C )。 A.import java.applet.* ; B.import java.awt.* ;

C.import java.io.* ; D.import java.awt.event.* ; 8、以下关于构造函数的描述错误的是( A )。 A、构造函数的返回类型只能是void型。

B、构造函数是类的一种特殊函数,它的方法名必须与类名相同。 C、构造函数的主要作用是完成对类的对象的初始化工作。 D、一般在创建新对象时,系统会自动调用构造函数。

9、关于修饰符static以下叙述错误的是( B )。 A.static方法不可被覆盖 B.static可以用来修饰类

C.static方法不可以直接访问非静态的方法,否则编译出错

D.static方法只能访问类变量或方法参数,不可直接访问成员变量 10.设有下面两个类的定义:

class Person { class Student extends Person { long id; // 身份证号 int score; // 入学总分 String name; // 姓名 int getScore(){ } return score; } } 则类Person和类Student的关系是( B )。 A、包含关系 B、继承关系 C、关联关系 D、上述类定义有语法错误

11、给出如下代码: class Test{ //定义成员a public static void fun() { // some code... } }

要在函数fun()中直接访问a,以下成员变量a定义正确的是( B )。 A.public int a; B.static int a; C.int a; D. protected int a; 12、编译并运行以下程序,以下描述哪个选项是正确的( C )。 class ATestOftoString{ protected String toString(){ return super.toString();} }

A、编译通过运行无异常 B、编译通过但运行时出错

C、行2出错,不能成功编译 D、不能成功编译,行3出错 13、有以下程序片段,下列哪个选项不能插入到行1。( A ) 1.

2.public class A{ 3.//do sth 4. }

A、public class MainClass{ } B、package mine; 14、关于以下application的说明,正确的是( C )。 1. class StaticStuff 2. { 3. static int x; 4. static { x+=5;} 5. public static void main(String args[ ]) 6. { 7. System.out.println(“x=” + x); 8. } 9. static { x/=5;} 10.}

A、4行与9行不能通过编译,因为缺少方法名和返回类型 B、9行不能通过编译,因为只能有一个静态初始化器 C、编译通过,执行结果为:x=1

D、能通过编译,但程序运行结果不可预知,因为变量x没有初始化 C、class ANotherClass{ } D、import java.util.*;


java程序设计期末复习题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:吉安市地方税务局支持全民创业的地方税收优惠政策和服务措施

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: