收藏 分享(赏)

Java基础习题(部分)new.doc

上传人:dreamzhangning 文档编号:2205245 上传时间:2018-09-05 格式:DOC 页数:20 大小:194KB
下载 相关 举报
Java基础习题(部分)new.doc_第1页
第1页 / 共20页
Java基础习题(部分)new.doc_第2页
第2页 / 共20页
Java基础习题(部分)new.doc_第3页
第3页 / 共20页
Java基础习题(部分)new.doc_第4页
第4页 / 共20页
Java基础习题(部分)new.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、Java 基础习题(附答案)11.下列语句序列执行后,m 的值是( C)。int a=10, b=3, m=5; if( a=b ) m+=a; else m=+a*m;A) 15 B) 50 C) 55 D) 52.下列语句序列执行后,k 的值是(B )。int i=4,j=5,k=9,m=5; if(ij|mj|m4);x+);A)无限次 B)一次也不执行 C)执行 4 次 D)执行 3 次17.下列语句序列执行后,j 的值是( A )。 int j=1;for( int i=5; i0; i-=2 ) j*=i;A) 15 B) 1 C) 60 D) 018.以下 for 循环的执行次数

2、是( B )。for(int x=0;(x=0) i-=2 ) j*=2;A) 15 B) 1 C) 60 D) 3220.以下 for 循环的执行次数是( B )。for(int x=0,y=0;(y!=0) i- ) j+=i;A) 3 B) 4 C) 5 D) 622.以下由 for 语句构成的循环执行的次数是 (B )。for ( int i = 0; true ; i+) ;A)有语法错,不能执行 B)无限次 C)执行 1 次 D)一次也不执行23.下面语句执行后,i 的值是(B)。for( int i=0, j=1; j 4 ) -j;A) 5 B) 6 C) 7 D) 829.下

3、列语句序列执行后,j 的值是( C )。int j=8, i=6;while( i 4 ) i-=2;- -j;A) 5 B) 6 C) 7 D) 830.下列语句序列执行后,j 的值是( B )。int j=9, i=6;while( i- 3 ) -j;A) 5 B) 6 C) 7 D) 831.下列语句序列执行后,j 的值是(D)。int j=3, i=2;while( -i!=i/j ) j=j+2;A) 2 B) 4 C) 6 D) 532. 若有循环:int x=5,y=20;do y-=x; x+=2; while(x1 );A) 1 B) 5 C) 2 D) 035.下列语句序

4、列执行后,i 的值是(D)。int i=10;do i/=2; while( i 1 );A) 1 B) 5 C) 2 D) -136.下列语句序列执行后,i 的值是(C )。int i=10;do i-=2; while( i6 );A) 10 B) 8 C) 6 D) 437.下列语句序列执行后,i 的值是(D)。int i=16;do i/=2; while( i 3 );A) 16 B) 8 C) 4 D) 238.以下由 do-while 语句构成的循环执行的次数是(B)。int k = 0;do +k; while ( k 50)break outer;System.out.pri

5、ntln(i*j);next:A)标号为 inner 的语句 B)标号为 outer 的语句C)标号为 next 的语句 D)以上都不是41.下列循环中,执行 continue outer 语句后,(A)说法正确。outer:for(int i=1;i50)continue outer;System.out.println(i*j);A)程序控制在外层循环中并且执行外层循环的下一迭代B)程序控制在内层循环中并且执行内层循环的下一迭代C)执行标号为 next 的语句D)以上都不是2.找出下面各段程序中的错误:a)For (i=100 , i=1 , i+)System.out.println(i

6、);答案:For 的 F 应该小写;For 头中应当使用分号,而应当使用逗号;应当为答案:应当在 case 0 中放置一条 break 语句c)下面的代码应输入从 191 之间的所有奇数:for( i = 19 ; i = 1 ; i+=2)System.out.println(i);答案:应该为d)下面的代码应输出从 2 到 100 之间的所有偶数:counter = 2;doSystem.out.println(counter);counter += 2;While (counter = 0)sum +=z;答案:变量 z 在 while 循环中一直没有改变,如果循环条件(z=0 )为真,

7、则会出现死循环,为了避免,必须使得变量 z 递减,使其最终小于 0;5.指出并纠正下列各段代码的错误。(注解:每段代码中可能包含多个错误。)a) if ( age =65 ) ;System.out.println( “ Age greater than or equal to 65” );else System.out.println ( “Age is less than 65” );答案:if 后不能有分号,将分号去掉可以改正这个错误。b) int x = 1 ,total ;while ( x b?a:b)int fun ( int a, int b ) _; 4. 以下方法 m 的功

8、能是求两参数之积的整数部分。(return (int)(a*b)int m ( float x, float y ) _; 5. 下面是用户程序对 Applet 类中方法 paint( ) 的重新定义。(void call)public _ paint(Graphics _) call.drawString(“Hello,java!“,10,20); 6.下面方法的功能是判断一个整数是否为偶数,将程序补充完整。(boolean true)public _ isEven(int a) if(a%2=0)return _;else return false;7.同一个类中多个方法具有相同的方法名,

9、不同的_称为方法的重载。(参数列表)二选择题及答 案1.下列方法定义中,正确的是( D )。A) int x( int a,b ) return (a-b); B) double x( int a,int b) int w; w=a-b; C) double x( a,b ) return b; D) int x( int a,int b) return a-b; 2.下列方法定义中,正确的是( D )。A) void x( int a,int b ); return (a-b); B) x( int a,int b) return a-b; C) double x return b; D)

10、int x( int a,int b) return a+b; 3. 下列方法定义中,不正确的是(D)。A) float x( int a,int b ) return (a-b); B) int x( int a,int b) return a-b; C) int x( int a,int b ); return a*b; D) int x(int a,int b) return 1.2*(a+b); 4. 下列方法定义中,正确的是( A )。A) int x( ) char ch=a; return (int)ch; B) void x( ) .return true; C) int x(

11、 ) .return true; D) int x( int a, b) return a+b; 5. 列方法定义中,方法头不正确的是(D )。A)public int x( ) . B)public static int x( double y ) . C)void x( double d ) . D)public static x( double a ) . 6.在某个类中存在一个方法:void getSort(int x),以下能作为这个方法的重载的声明的是(C) 。A)public getSort(float x) B)int getSort(int y)C)double getSor

12、t(int x,int y) D)void get(int x,int y)7.在某个类中存在一个方法:void sort(int x),以下不能作为这个方法的重载的声明的是(B) 。A)public float sort(float x) B)int sort(int y)C)double sort(int x,int y) D)void sort(double y)8. 为了区分类中重载的同名的不同方法,要求( A)。A) 采用不同的形式参数列表 B) 返回值类型不同 C) 调用时用类名或对象名做前缀 D) 参数名不同三问答题及答 案1. 方法可以没有返回值吗?可以有多个返回值吗? (可以

13、;不能)2. 一个方法如果没有返回值,方法头定义中的返回值类型为何?(void)3. 何为形式参数?何为实在参数?(略)4. 一个方法或一个复合语句内定义的变量是否可以在方法外或复合语句外使用?这种变量称为什么变量?(不 能;局部变量)5. 采用_的程序设计原则,使程序结构清晰简单,设计容易,有助于软件可靠性的提高。(模块化)6. 重载的方法可以通过它们的返回值类型的不同来区分吗?(不能)7. 编译程序如何区分重载方法的调用?(根据参数列表不同来区分)一、选择题1 定义类头时,不可能用到的关键字是( B)。A) class B)private C)extends D)public2.下列类定义

14、中,不正确的是(C)。A) class x B) class x extends y C) static class x implements y1,y2 D) public class x extends Applet 3.下列类头定义中,错误的是( A)。A)public x extends y . B) public class x extends y .C)class x extends y implements y1 . D)class x .设 A 为已定义的类名,下列声明 A 类的对象 a 的语句中正确的是( D)。A) float A a; B) public A a=A( )

15、; C) A a=new int( ); D) static A a=new A( );5.设 A 为已定义的类名,下列声明 A 类的对象 a 的语句中正确的是(A)。A) public A a=new A( ); B) public A a=A( ); C) A a=new class( ); D) a A;6.设 X 、Y 均为已定义的类名,下列声明类 X 的对象 x1 的语句中正确的是(C) 。A) public X x1= new Y( ); B) X x1= X ( ); C) X x1=new X( ); D) int X x1;7. 设 X 、Y 为已定义的类名,下列声明 X 类

16、的对象 x1 的语句中正确的是(A) 。A) static X x1; B) public X x1=new X(int 123); C) Y x1; D) X x1= X( );8.通过类 MyClass 中的不含参数的构造方法,生成该类的一个对象 obj,可通过以下语句实现: _。(MyClass obj=new MyClass( );)9. 设 i , j 为类 X 中定义的 int 型变量名,下列 X 类的构造方法中不正确的是 ( A)。A) void X(int k ) i=k; B) X(int k ) i=k; C) X(int m, int n ) i=m; j=n; D) X

17、( )i=0;j=0; 10. 有一个类 A,以下为其构造方法的声明,其中正确的是 ( A )。A)public A(int x). B)static A(int x).C)public a(int x). D)void A(int x).11. 有一个类 A,以下为其构造方法的声明,其中正确的是 ( B )。A)void A(int x). B)A(int x).C)a(int x). D)void a(int x).12. 设 i、j 、k 为类 X 中定义的 int 型变量名,下列类 X 的构造方法中不正确的是( B )。A) X( int m) . B) void X( int m)

18、. C) X( int m, int n) . D) X( int h,int m,int n) . 13. 设 i , j 为类 X 中定义的 double 型变量名,下列 X 类的构造方法中不正确的是(A )。A) double X(double k ) i=k; return i; C) X( )i=6;j=8; B) X(double m, double n ) i=m; j=n; D) X(double k ) i=k; 14. 设 a , b 为类 MyClass 中定义的 int 型变量名,下列 MyClass 类的构造方法中不正确的是(A) 。A) double MyClass

19、(double k ) a=k; return a; B) MyClass( )a=6;b=8; C) MyClass (double m, double n ) a=m; b=n; MyClass (double k ) a=k; 15 定义类头时,不可能用到的关键字是(A)。 A)protected B) class C)extends D)public16.下列类头定义中,错误的是(A)。A)public TestClass extends y . B) public class TestClass extends y .C)class TestClass extends y imple

20、ments y1 . D) class TestClass .17.设 B 为已定义的类名,下列声明 B 类的对象 b 的语句中正确的是(D)。A) float B b; B) public B b=B( ); C) B b=new int( ); D) static B b=new B( );18.设 ClassA 为已定义的类名,下列声明 ClassA 类的对象 ca 的语句中正确的是(A)。A)public ClassA ca=new ClassA( ); B) public ClassA ca=ClassA( ); C) ClassA ca=new class( ); D) ca Cl

21、assA;19.设 A 、B 均为已定义的类名,下列声明类 A 的对象 a1 的语句中正确的是(C)。A) public A a1= new B( ); B) A a1= A ( ); C) A a1=new A( ); D) int A a1;20. 设 A 、B 为已定义的类名,下列声明 A 类的对象 a1 的语句中正确的是(A)。A) static A a1; B) public A a1=new A(int 123); C) B a1; D) A a1= A( );21.通过类 A 中的不含参数的构造方法,生成该类的一个对象 a,可通过以下语句实现: _。(A a=new A( );)

22、22. 设 m , n 为类 A 中定义的 int 型变量名,下列 A 类的构造方法中不正确的是( A)。A) void A(int k ) m=k; B) A(int k ) m=k; C) A(int m, int n )m=i; n=j; D) A( )m=0;n=0; 23. 有一个类 Person,以下为其构造方法的声明,其中正确的是( A )。A)public Person (int x). B)static Person (int x).C)public a(int x). D)void Person (int x).24. 有一个类 Student,以下为其构造方法的声明,其中

23、正确的是( B )。A)void Student (int x). B) Student (int x).C)s(int x). D)void s(int x).25. 设 i、j 、k 为类 School 中定义的 int 型变量名,下列类 School 的构造方法中不正确的是( B )。A) School ( int m) . B) void School ( int m) . C) School ( int m, int n) . D) School ( int h,int m,int n) . 二、填空题2. 下面是一个类的定义,请将其补充完整。(Student String)clas

24、s _ String name;int age;Student( _ s, int i)name=s;age=i;3.下面是一个类的定义,请将其补充完整。(myclass static)class _ / 定义名为 myclass 的类_ int var=666;static int getvar() return var; 4.下面程序的功能是通过调用方法 max()求给定的三个数的最大值,请将其补充完 整。(max(i1,i2,i3) static)public class Class1public static void main( String args )int i1=1234,i2

25、=456,i3=-987;int MaxValue;MaxValue=_;System.out.println(“三个数的最大值:“+MaxValue);public _ int max(int x,int y,int z) int temp1,max_value;temp1=xy?x:y;max_value=temp1z?temp1:z;return max_value;5.下面是一个类的定义,请将其补充完整。(class static)_ A String s;_ int a=666;A(String s1) s=s1; static int geta( ) return a; 9.下面程

26、序的功能是通过调用方法 max()求给定的二个整数的最大值,请将其补充完 整。(max(a1,a2) int)public class Class1public static void main( String args )int a1=1234,a2=456;int MaxValue;MaxValue=_;System.out.println(“二个数的最大值:“+MaxValue);public static _ max(int x,int y) int max_value;max_value =xy?x:y;return max_value;1. 面向对象的软件开发方法用什么把数据和基于

27、数据的操作封装在一起?(类)2. 在一个类定义中,用什么描述对象的状态? 用什么描述对象的行为?(属性;方法)3. 什么方法是一个特殊的方法,用于对对象进行初始化?(构造方法 )4. 一个源程序文件中,能有多于一个的 public 类吗?(不能)5. 构造方法的方法名可由编程人员任意命名吗?(不能,必须与类名同名)6. 类的构造方法名必须和类名相同吗?(必须)7. 构造函数有返回值吗?(没有)8. 构造函数可以重载吗? (可以)9. 如果一个类定义中没有定义构造方法,该类有构造函数吗?(有,编译器会自动生成一个缺省的不带参数的构造函数)10. 如果一个类定义中已经定义了构造方法,java 还会

28、给它定义缺省的构造方法吗?(不会)11. 类的访问控制权有哪两种?(public 和 缺省的(即没有访问控制修饰符))12. 用什么修饰符修饰的方法称为静态方法? 用什么修饰符修饰的属性称为静态属性?(static)13. 静态属性和静态方法仅属于类的一个具体对象吗?它属于谁?(不是;它是类的所有对象公有的)14. static 变量能是 private 变量吗?(可以)15. 使用静态成员都能以什么做前缀?(可以用类名或对象名做前缀)16. static 方法中能有 this 引用吗?(不能)17. 非 static 方法中可以有 this 引用吗?(可以)18static 方法能处理非 s

29、tatic 成员吗?(不能)19非 static 方法能处理 static 成员吗?(能)20. 类的私有属性和私有方法能不能被其子类直接访问? (不能)一、 选择题1. Java 语言的类间的继承关系是( B )。A) 多重的 B) 单重的 C) 线程的 D) 不能继承 2. 以下关于 Java 语言继承的说法正确的是( C )。 A)Java 中的类可以有多个直接父类 B)抽象类不能有子类C)Java 中的接口支持多继承 D)最终类可以作为其它类的父类3. 现有两个类 A、B,以下描述中表示 B 继承自 A 的是(D)。A) class A extends B B) class B imp

30、lements AC) class A implements B D) class B extends A4. 下列选项中,用于定义接口的关键字是( A)。A)interface B) implements C) abstract D) class5. 下列选项中,用于实现接口的关键字是( B)。A)interface B) implements C) abstract D) class6. Java 语言的类间的继承的关键字是( B )。A) implements B) extends C) class D) public 7. 以下关于 Java 语言继承的说法错误的是( A )。 A)J

31、ava 中的类可以有多个直接父类 B)抽象类可以有子类C)Java 中的接口支持多继承 D)最终类不可以作为其它类的父类8. 现有两个类 M、N,以下描述中表示 N 继承自 M 的是(D)。A) class M extends N B) class N implements MC) class M implements N D) class N extends M9. 现有类 A 和接口,以下描述中表示类实现接口的语句是 (A)。A) class implements B B) class B implements C) class extends B D) class B extends 1

32、0. 下列选项中,定义抽象类的关键字是( C)。A)interface B) implements C) abstract D) class11. 下列选项中,定义最终类的关键字是(D)。A)interface B) implements C) abstract D) final12. 下列选项中,哪个是 java 语言所有类的父类(C)A)String B) Vector C) Object D) KeyEvent13. java 语言中,用于判断某个对象是否是某个类的实例的运算符是(A)A)instanceof B) + C) isinstance D) char c=a;char d=(

33、char)(c+i);System.out.println(d);2、 面代码执行完后的输出是_-。(答案:b is:false)int x=3;int y=4;boolean b=true;System.out.println(“b is:“+(b=(yyb = +a * 3; (注:a+是先用后加,+a 是先加后用)9、 Java 中的的字符使用的是 16 位的_ 编码。(答案:Unicode)10、 Java 语言中的浮点型数据根据数据存储长度和数值精度的不同,进一步分为 float 和 _两种具体类型。(答案:double)11、当整型变量 n 的值不能被 13 除尽时,其值为 fal

34、se 的 Java 语言表达式是(答案:(n%13= =0)?true:false)12、表达式 3/6 * 5 的计算结果是_ 。(答案: 0)13、设 x, y,max,min 均为 int 型变量, x、y 已赋值。用三目条件运算符,求变量 x 、y 的最大值和最小值,并分别赋给变量 max 和 min, 这两个赋值语句分别是 _和_。(答案:max=xy?x:y min=x6A) 6 B) 9 C) 11 D) 317、对于一个三位的正整数 n,取出它的十位数字 k(k 为整型)的表达式是( )。(A)A) k = n / 10 % 10 B) k = ( n - n / 100 *

35、100 )%10C) k = n % 10 D) k = n / 1018、现有一变量声明为 boolean aa;下面赋值语句中正确的是( )。(A)A)aa=false; B)aa=False; C)aa=“true“; D)aa=0;19、设有定义 int i = 6 ;,则执行以下语句后,i 的值为( )。(C)i += i - 1;A) 10 B) 121 C) 11 D) 10020、下列语句序列执行后,ch1 的值是( )。(D )char ch1=A,ch2=W;if(ch1 + 2 j ) i-; else j-;A) 15 B) 16 C) 7 D) 822、设有定义 fl

36、oat x=3.5f, y=4.6f, z=5.7f;则以下的表达式中,值为 true 的是( )。(B )A) x y | x z B) x != y C) z ( y + x ) D) x yA) true , 6, 8 B) false , 7, 7C) true, 7, 7 D) false, 6, 81 if 选择结构允许程序干什么?2 什么是语法错误,请举例说明。3 什么是逻辑错误,请举例说明。4 为什么程序员要在代码中插入注释?5 在 if 结构的右括号后面紧跟着分号,为什么会导致逻辑错误。6 如下程序的输出结果是什么?public class Operatorpublic st

37、atic void main(String args)int x=30;int y=2;System.out.print(x*y+9/3);答案:637 如下代码的输出结果是什么?System.out.println(8*4*2+6)/2+4);答案:3910.写出四种不同的 Java 语句,实现对整型变量 x 加一。答案:x=x+1;x+=1;+x;x+12、下列哪些是合法的标识符:applet、Applet 、a+ 、-a、 4#R、$4、#44、apps(答案:applet、Applet 、 $4、apps)13、与“+”有相同优先级或更高优先级的运算符(至少写出 3 个)。(答案:!、*、/、+、 -)14、请叙述标识符的定义规则。指出在下面的标识符中,那些是不正确的,并说明原因。here,_there,this,that,it,2to1,_it。(答案:标识符 必须以字母、下划线(_)或美元符号($)开头。标识符不能包含运算符,如+, 等。标识符不能是关键字,如 class, public 等。标识符不能是 true, false 或 null。标识符可有任意长度。注意:Java 区分大小写,X和 x 是两个不同的标识符。不正确的标识符有:this :关键字、 2to1:数字开头)基础运算符:例:

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 大学课件

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报