Java基础习题

合集下载

java基础50题

java基础50题

java基础50题姓名:1. 关于Java语言的特征,描述正确的是A. 支持跨平台(Windows,Linux,Unix等)B. GC(自动垃圾回收),提高了代码安全性C. 支持类C的指针运算操作D. java语言是面向对象的语言2.下列表达式正确的是A. byte b=128;B. boolean b=null;C. long a = 2147483647L;D. float f=0.9239;3下列说法正确的有()A. class中的constructor不可省略B. constructor必须与class同名,但方法不能与class同名C. constructor在一个对象被实例化时执行D.一个class只能定义一个constructor4. 执行完以下代码int [ ] x = new int[25];后,下列各项正确的是:A、 x[24]为0B、 x[24]未定义C、 x[25]为0D、 x[0]为空5. 实例化数组的方式正确的是A. int[] ia = new int [15];B. float fa = new float [20];C. int ia [][] = (4, 5, 6) (1, 2, 3);D. Object oa = new float[20];6. 下列代码的运行结果是:public class SwitchTest {public static void main (String []args) { System.out.println (“value =” +switchIt(4)); }public static int switchIt(int x) {int j = 1;switch (x) {case 1: j++;case 2: j++;case 3: j++;case 4: j++;case 5: j++;default:j++;}return j + x;}}A. Value =3B. Value =4C. Value =5D. Value =6E. Value =7F. Value =87. 下列不属于java标识符的是A.HelloWorldB._HelloWorldC. $HelloWorldD. HelloWorld3E. 3HelloWorld8. 给出下面的代码段:()public class Base{int w, x, y, z;public Base(int a, int b){x=a; y=b;}public Base(int a, int b, int c, int d) {<插入代码>w=d;z=c;}}在<插入代码>处写下如下代码,正确的是A.Base(a, b);B.x=a, y=b;C.x=a; y=b;D.this(a,b);9. 指出下列程序运行的结果public class Example{String str=new String("good");char[]ch={'a','b','c'};public static void main(String args[]){Example ex=new Example();ex.change(ex.str,ex.ch);System.out.print(ex.str+" and ");System.out.print(ex.ch);}public void change(String str,char ch[]){ str="test ok"; ch[0]='g';}}A. good and abcB. good and gbcC. test ok and abcD. test ok and gbc10. (继承)关于java中的继承说法正确的是A.子类不可以重写父类的方法B.构造方法是可以被继承的C.Java 只支持单继承,不允许多重继承。

java基础50道经典练习题及答案

java基础50道经典练习题及答案

java基础50道经典练习题及答案《Java基础50道经典练习题及答案》Java作为一种广泛应用于软件开发的编程语言,对于初学者来说,掌握其基础知识是非常重要的。

为了帮助大家更好地学习和掌握Java基础知识,我们整理了50道经典的练习题及答案,希望能够帮助大家更好地理解和掌握Java编程。

1. 请写出Java中的8种基本数据类型。

2. 什么是Java中的包(package)?3. Java中的“==”和“equals()”有什么区别?4. 什么是Java中的多态(polymorphism)?5. 请写出Java中的四种访问修饰符及其作用。

6. 什么是Java中的接口(interface)?7. 请写出Java中的四种循环语句。

8. 什么是Java中的异常处理(exception handling)?9. Java中的“String”和“StringBuffer”有什么区别?10. 请写出Java中的三种注释方式。

这些练习题涵盖了Java基础知识的各个方面,包括数据类型、包、运算符、多态、访问修饰符、接口、循环语句、异常处理、字符串处理等内容。

通过做这些练习题,可以帮助大家更好地理解和掌握Java编程的基础知识。

在学习Java编程的过程中,不仅要掌握理论知识,还要多做练习,多动手实践。

只有通过实际操作,才能更好地理解和掌握Java编程的各种知识点。

希望大家能够认真对待这些练习题,多加练习,相信一定能够取得不错的成绩。

最后,希望大家在学习Java编程的过程中,保持耐心和坚持,相信通过不懈的努力,一定能够掌握好Java编程的基础知识,成为一名优秀的Java程序员。

祝大家学习进步,早日掌握Java编程!。

java基础试题及答案

java基础试题及答案

java基础试题及答案一、选择题(每题2分,共20分)1. Java中,以下哪个关键字用于定义一个类?A. classB. interfaceC. structD. enum答案:A2. 下列哪个选项是Java中的基本数据类型?A. StringB. intC. ArrayListD. Object答案:B3. 在Java中,哪个修饰符用于声明一个成员变量为类的私有成员?A. privateB. publicC. protectedD. static答案:A4. Java中,哪个关键字用于捕获异常?A. tryB. catchC. finallyD. throw答案:B5. 在Java中,哪个关键字用于定义一个接口?A. classB. interfaceC. abstractD. enum答案:B6. 下列哪个选项是Java集合框架中的一部分?A. StringB. ArrayListC. FileD. Thread答案:B7. 在Java中,哪个关键字用于定义一个方法?A. functionB. methodC. defD. void答案:D8. Java中,哪个关键字用于定义一个抽象方法?A. abstractB. finalC. staticD. native答案:A9. 在Java中,哪个关键字用于定义一个内部类?A. innerB. nestedC. innerclassD. class答案:D10. Java中,哪个关键字用于定义一个静态方法?A. staticB. dynamicC. finalD. abstract答案:A二、填空题(每题3分,共15分)1. Java中,用于定义一个类的关键字是______。

答案:class2. Java程序的入口点是______方法。

答案:main3. 在Java中,______关键字用于声明一个变量为常量。

答案:final4. Java中,______关键字用于定义一个方法为静态的。

java基础试题

java基础试题

java基础试题一、选择题1. Java中用于创建新对象的关键字是()。

A. newB. thisC. classD. public2. 下列哪个选项是Java语言的特性?A. 多态B. 静态类型C. 自动内存管理D. 所有以上选项3. 在Java中,如果需要导入多个包,可以使用以下哪种方式?A. 每行导入一个包B. 用逗号分隔多个包C. 用分号分隔多个包D. 用括号包含多个包4. 下列关于Java异常处理的描述,哪项是正确的?A. try块可以单独存在,不一定要伴随catch块B. catch块可以捕获多种类型的异常C. finally块必须跟在catch块之后D. throw语句用于声明自定义异常5. 在Java中,下列哪个类是所有其他类的父类?A. ObjectB. SystemC. StringD. Math二、填空题1. 在Java中,每个类可以定义一个特殊的方法,该方法的名称是________,当创建类的新对象时会自动调用。

2. 如果需要在Java程序中处理用户输入,可以使用________类。

3. Java中的垃圾回收机制是自动的,这意味着程序员不需要显式地________内存。

4. 为了在Java中实现多线程编程,可以使用关键字________来定义一个线程。

5. 在Java中,所有的类都是定义在某个________文件中。

三、判断题1. Java中的接口可以包含具体的方法实现。

()2. 所有的Java类都是继承自ng.Object类的。

()3. 在Java中,如果一个类没有显式地指定构造方法,编译器会提供一个默认的无参构造方法。

()4. 所有的Java异常都是继承自ng.Exception类的。

()5. 在Java中,final关键字可以用来修饰方法,使其不能被重写。

()四、简答题1. 请简述Java中的封装性,并给出一个示例。

2. 解释什么是Java的继承,以及它的好处。

3. 请描述Java中的多态性,并给出一个实际应用的例子。

java基础笔试题(答案已整理)

java基础笔试题(答案已整理)

java基础笔试题(答案已整理) Java基础试题一、选择题(1*30=30)1.Java提供哪几种运算符?(多选)A)算术运算符 B)位运算符 C)关系运算符 D)逻辑运算符 E)条件运算符ng包的哪个方法比较两个对象是否相等返回true?(b)A: toString() B: equals() C: compare() D: 以上都不正确3.下列对Java的变量与函数说法正确的是?(多选)A)变量是用来保存数据的 B)变量是用来实现操作过程的 C)函数是用来实现操作过程的 D)函数是用来保存数据的E)函数的参数是数据的入口4.已知:int[] a = new int[100];在下列给出的数组元素中,非法的是?(d)A: a[0] B: a[1] C: a[99] D: a[100]5.在Java中,一个类可同时定义许多同名的方法,在这些方法的形式参数个数、类型或顺序各不相同,传值也可以各不相同。

这种面向对象程序的特性称为?(c)A: 隐藏 B: 覆盖 C: 重载 D: Java不支持此特性6.()是一组常量和抽象方法的集合。

(d)A: 实例 B: 类 C: 包 D: 接口7.下面关于数组说法正确的是?(多选)A)一维数组实质上是相同类型变量的列表 B)创建一个数组首先定义数组变量所需的类型 C)char c[]=new char[26];可声明一个含有26个元素的char型数组 D)当为一个多维数组的时候分配内存时,仅需要为第一维指定内存,然后再分配其他维的存 E)int twain[][] = new int[4][5];可声明一个二维数组8.Java源文件和编译后的文件扩展名分别为?(b)A:。

class和.java B:。

java和.class C:。

class和.class D:。

java和.java9.设x=5,则y=x--和y=--x的结果,使y分别为?(c)A: 5,5 B: 5,6 C: 5,4 D: 4,410.若x是float类变量,x=10/4,则x的值是?(b)A: 2 B: 2.0 C: 2,5 D: 编译错误11.下面方法中,用于调度线程使其运行的是?(多选)A。

java编程基础考试题

java编程基础考试题

java编程基础考试题一、选择题(每题2分,共20分)在Java中,哪个关键字用于声明一个类?A. classB. structC. typeD. object下列哪个是Java中的基本数据类型?A. StringB. intC. ArrayListD. Scanner下列关于Java中变量命名的说法,哪个是正确的?A. 变量名必须以数字开头B. 变量名可以使用空格C. 变量名区分大小写D. 变量名不能使用下划线在Java中,以下哪个是有效的注释方式?A. // 这是一个单行注释B. /* 这是一个多行注释 /C. / 这是一个单行注释D. // 这是一个多行注释下列哪个选项可以正确地声明一个整型数组并初始化?A. int[] myArray = new int[5] {1, 2, 3, 4, 5};B. int[] myArray = {1, 2, 3, 4, 5};C. int myArray[] = new int[5] {1, 2, 3, 4, 5};D. int myArray = {1, 2, 3, 4, 5};在Java中,哪个关键字用于表示方法返回值的类型?A. voidB. returnC. typeD. returnType下列哪个是Java中的条件语句?A. forB. ifC. whileD. switch下列关于Java中System.out.println()方法的说法,哪个是正确的?A. 它用于从控制台读取输入B. 它用于在控制台输出文本C. 它用于在控制台显示错误消息D. 它用于在控制台显示警告消息在Java中,String类型的数据以下列哪种方式声明?A. string myString = "Hello";B. String myString = new String("Hello");C. string myString = new String("Hello");D. String = "Hello";下列关于Java中静态方法(static method)的说法,哪个是正确的?A. 静态方法只能访问静态变量B. 静态方法不能被实例对象调用C. 静态方法不能包含非静态方法D. 静态方法只能在类加载时被调用一次二、填空题(每题2分,共10分)在Java中,一个类通常包含_______、字段(属性)和方法。

java初级试题及答案

java初级试题及答案

java初级试题及答案一、选择题(每题2分,共20分)1. Java语言中的“==”操作符用于比较两个对象的:A. 引用B. 值C. 类型D. 内存地址答案:A2. 下列哪个是Java的关键字?A. classB. functionC. returnD. include答案:A3. 在Java中,哪个关键字用于定义一个类?A. classB. defineC. typeD. structure答案:A4. Java中的main()方法必须定义为:A. public static voidB. private static voidC. public static intD. private static int答案:A5. 下列哪个是Java的访问修饰符?A. publicB. staticC. finalD. abstract答案:A6. Java中的字符串是:A. 可变的B. 不可变的C. 动态的D. 静态的答案:B7. 在Java中,哪个类定义了基本的输入输出流?A. java.io.InputStreamB. java.io.OutputStreamC. java.io.FileInputStreamD. java.io.FileOutputStream答案:A8. Java中的异常处理是通过以下哪个关键字实现的?A. tryB. catchC. finallyD. all of the above答案:D9. 下列哪个是Java集合框架中的接口?A. ArrayListB. ListC. HashMapD. Map答案:B10. Java中的哪个类提供了日期和时间的表示?A. DateB. TimeC. CalendarD. DateTime答案:A二、填空题(每空2分,共20分)1. Java是一种_________语言,它支持跨平台运行。

答案:面向对象2. Java程序的执行入口是_________方法。

第1章 Java入门练习题

第1章 Java入门练习题
(C)可以有多个或零个main方法(D)必须有一个main方法
10.设有如下程序:
public class Hello{
public void main(String args[])
{ System.out.println("Hello World!");}
}
该程序有如下哪种可能的结果?()
(A)执行时产生异常(B)程序不能编译
四、简答题
1.为什么说Java的运行与计算机硬件平台无关?
2. Java对源程序文件的命名规则有什么要求?源程序文件编译后生成的是什么文件?
五、编程题
1.编写一个Java Application,利用JDK软件包中的工具编译并运行这个程序,在屏幕上输出“Welcome to Java World!”。
(A)13个字节码文件,扩展名为.class(B)1个字节码文件,扩展名为.class
(C)3个字节码文件,扩展名为.java(D)3个字节码文件,扩展名为.class
4.阅读下列代码,选出该代码段正确的文件名()。
class A{
void method1(){
System.out.println("Method1 inclass A");
2.编写一个程序,在屏幕上打印出以下的图形:
*************************************
********* Java程序设计*********
*************************************
(B)原因是没有安装JDK开发环境。
(C)原因是java源文件名后缀一定是以.txt结尾。
(D)原因是JDK安装后没有正确设置环境变量PATH和Classpath。

java基础练习题答案

java基础练习题答案

java基础练习题答案一、选择题1. Java是一种:A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案:B2. 以下哪个是Java的基本数据类型?A. StringB. IntegerC. booleanD. Object答案:C3. Java中的main方法是:A. 程序的入口点B. 程序的结束点C. 程序的循环点D. 程序的异常处理点答案:A4. 在Java中,哪个关键字用于定义类?A. classB. functionC. structD. interface答案:A5. Java中的异常处理是通过以下哪个关键字实现的?A. tryB. catchC. finallyD. A和B答案:D二、填空题1. Java是一种面向________的语言。

答案:对象2. Java程序的执行流程是从________方法开始的。

答案:main3. 在Java中,所有的类都是继承自________类。

答案:Object4. 一个Java程序可以包含多个类,但只有一个________类。

答案:公共(public)5. Java的垃圾回收机制用于________内存。

答案:自动回收三、简答题1. 请简述Java的跨平台特性。

答案:Java的跨平台特性主要得益于它的编译和运行机制。

Java 源代码首先被编译成字节码,这些字节码可以在任何安装了Java虚拟机(JVM)的平台上运行,而不需要重新编译。

2. 什么是Java的封装性?答案:封装性是面向对象编程的一个核心概念,它指的是将对象的数据(属性)和行为(方法)捆绑在一起,并隐藏内部实现细节,只通过公共接口与外部交互。

四、编程题1. 编写一个Java程序,计算并打印1到100的整数之和。

```javapublic class SumCalculator {public static void main(String[] args) {int sum = 0;for (int i = 1; i <= 100; i++) {sum += i;}System.out.println("The sum of numbers from 1 to 100 is: " + sum);}}```2. 编写一个Java程序,实现一个简单的计算器,能够进行加、减、乘、除运算。

java基础考试试题及答案

java基础考试试题及答案

java基础考试试题及答案一、选择题(每题2分,共20分)1. Java语言属于以下哪一类编程语言?A. 编译型语言B. 解释型语言C. 汇编语言D. 机器语言答案:B2. 下列哪个是Java的关键字?A. classB. functionC. defineD. include答案:A3. Java中,哪个关键字用于定义一个类?A. classB. structC. typeD. interface答案:A4. Java中的main方法必须定义为:A. public static void main(String args[])B. private static void main(String[] args)C. public static void main(String[] args)D. public void main(String args[])答案:A5. 以下哪个是Java的合法标识符?A. 2variableB. variable2C. variable#2D. variable-2答案:B6. Java中,哪个关键字用于实现继承?A. extendsB. inheritC. deriveD. super答案:A7. Java中,哪个关键字用于实现多态?A. overloadB. overrideC. polymorphD. overloading答案:B8. Java中,哪个关键字用于定义接口?A. classB. structC. interfaceD. package答案:C9. Java中,哪个关键字用于定义包?A. packageB. classC. importD. export答案:A10. Java中,哪个关键字用于实现异常处理?A. tryB. catchC. finallyD. all of the above答案:D二、填空题(每空2分,共20分)1. Java是一种________面向对象的编程语言。

Java练习题库(含答案及解析)100题

Java练习题库(含答案及解析)100题

Java练习题库(含答案)一、Java语法基础(1-18)1、在Java中,负责对字节码解释执行的是()。

答案:BA、垃圾回收器B、虚拟机C、编译器D、多线程机制2、下列描述中,正确的是()答案:AA、Java程序的main方法必须写在类里面。

B、Java程序中可以有多个main方法。

C、Java程序中类名必须与文件名一样。

(public修饰的才有这要求)D、Java程序的main方法中如果只有一条语句,可以不用{}(大括号)括起来。

3、下列描述中,正确的是()答案:AA、Java中的标识符是区分大小写的B、源文件名与public类名可以不相同C、Java源文件扩展名为.jarD、Java源文件中public类的数目不限4、下列关于Java中变量命名规范的描述中,正确的是( ) 答案:BA、变量由字母、下划线、数字、$符号随意组成。

(数字不能开头)B、变量不能以数字开头。

C、A和a在java中是同一个变量。

D、不同类型的变量,可以起相同的名字。

5、以下选项中,不是Java合法标识符的是( ) 答案:CA、 VOIDB、 x3xC、 finalD、 abc$def6、在Java中定义一个类时,所使用的关键字是()。

答案:AA、classB、publicC、structD、class 或struct7、下列关于运算符优先级别排序正确的是()答案:AA、由高向低分别是:()、!、算术运算符、关系运算符、逻辑运算符、赋值运算符;B、由高向低分别是:()、关系运算符、算术运算符、赋值运算符、!、逻辑运算符;C、由高向低分别是:()、算术运算符、逻辑运算符、关系运算符、!、赋值运算符;D、由高向低分别是:()、!、关系运算符、赋值运算符、算术运算符、逻辑运算符;8、表达式(15+3*8)/4%3的值是( )答案:AA、 0B、 1C、 2D、 399、已知字符A对应的ASCII码值是65,那么表达式"A" + 1的值是()答案:CA.、66 B、B C、A1 D、非法表达式,编译出错10、下列关于boolean类型的叙述中,正确的是()答案:DA、可以将boolean类型的数值转换为int类型的数值B、可以将boolean类型的数值转换为字符串C、可以将boolean类型的数值转换为char类型的数值D、不能将boolean类型的数值转换为其他基本数据类型11、下面关于for循环的描述正确的是( ) 答案:AA、 for循环体语句中,可以包含多条语句,但要用大括号括起来。

java基础50道经典练习题及答案

java基础50道经典练习题及答案

JAVA基础编程练习题【程序1】古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月后每个月又生一对兔子,假如兔子都不死,问每个月的兔子对数为多少?【程序2】判断101-200之间有多少个素数,并输出所有素数。

程序分析:判断素数的方法:用一个数分别去除2到sqrt(这个数),如果能被整除,则表明此数不是【程序3】打印出所有的"水仙花数",所谓"水仙花数"是指一个三位数,其各位数字立方和等于该数本身。

例如:153是一个"水仙花数",因为153=1的三次方+5的三次方+3的三次方。

【程序4】将一个正整数分解质因数。

例如:输入90,打印出90=2*3*3*5。

程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成:(1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。

(2)如果n<>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作为新的正整数n,重复执行第一步。

【程序5】利用条件运算符的嵌套来完成此题:学习成绩>=90分的同学用A表示,60-89分之间的用B 表示,60分以下的用C表示。

【程序6】输入两个正整数m和n,求其最大公约数和最小公倍数。

【程序8】求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。

例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。

【程序9】一个数如果恰好等于它的因子之和,这个数就称为"完数"。

例如6=1+2+3.编程找出1000【程序10】一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次【程序11】有1、2、3、4个数字,能组成多少个互不相同且无重复数字的三位数?都是多少?程序分析:可填在百位、十位、个位的数字都是1、2、3、4。

Java基础试题及其答案

Java基础试题及其答案

Java试题一单项选择1)在Java中,在包com.db下定义一个类,要让包com.util下的所有类都可以访问这个类,这个类必须定义为()。

()a)protectedb)privatec)publicd)friendly2)在Java中,下列()语句不能通过编译。

(选择一项)a) String s= “join”+ “was”+ “here”;b) String s= “join”+3;c) int a= 3+5d) float f=5+5.5;3)给定java代码如下,运行时,会产生()类型的异常。

(选择一项)String s=null;s.concat(“abc”);a)ArithmeticExceptionb)NullPointerExceptionc)IOExceptiond)EOFException4) 在java中,()对象可以使用键/值的形式保存数据。

(选择一项)a)ArrayListb) HashSetc) HashMapd) LinkedList5)给定如下java代码,编译运行之后,将会输出()。

public class Test{public staticvoid main(String args[]){int a=5;System.out.println(a%2==1) ?(a+1) /2:a/2) ;}} (选择一项)a)1b)2c)2.5d)36)以下Java语句中,String str = “123456789”;str =str.subString(1,3);执行后str中的值为。

(选择一项)a) “23”b)“123”c) “12”d) “234”7)给定如下java代码,编译时会在()出现错误。

class Parent{}class Child extends Parent{public static void main(String args[]){Parent p1=new Child() ;//第一行Parent p2=new Parent () ;//第二行Child c1=new Child() ;//第三行Child c2=new Parent () ;//第四行}} (选择一项)a)第一行b)第二行c)第三行d)第四行8)给定如下java代码,编译运行时,结果是()。

java初级试题及答案

java初级试题及答案

java初级试题及答案一、选择题(每题2分,共10分)1. Java语言的创始人是:A. James GoslingB. Dennis RitchieC. Bjarne StroustrupD. Guido van Rossum答案:A2. 下列哪个选项不是Java语言的特性?A. 平台无关性B. 面向对象C. 编译型语言D. 多线程答案:C3. Java中,用于捕获异常的关键字是:A. tryB. catchC. throwD. finally答案:B4. 下列哪个关键字用于定义接口?A. classB. interfaceC. abstractD. final答案:B5. Java中,用于创建线程的构造方法是:A. run()B. start()C. main()D. execute()答案:B二、填空题(每题2分,共10分)1. Java程序的执行入口是________方法。

答案:main2. Java中,________关键字用于声明一个类。

答案:class3. 在Java中,________关键字用于实现多态。

答案:extends4. Java中,________关键字用于实现接口。

答案:implements5. Java中,________关键字用于声明一个方法。

答案:void三、简答题(每题5分,共20分)1. 请简述Java平台的三个主要组成部分。

答案:Java平台的三个主要组成部分是Java虚拟机(JVM)、Java API和Java语言。

2. 解释Java中的垃圾回收机制。

答案:Java中的垃圾回收机制是指自动回收不再被使用的对象所占用的内存,以避免内存泄漏。

3. 描述Java中集合框架的主要接口。

答案:Java中集合框架的主要接口包括List、Set和Map。

4. 请解释Java中的异常处理机制。

答案:Java中的异常处理机制包括try、catch、finally和throw 关键字,用于捕获和处理程序运行过程中出现的异常。

Java基础习题

Java基础习题

A) 5 B) 6 C) 7 D) 8
31.下列语句序列执行后,j 的值是(D)。
int j=3, i=2;
while( --i!=i/j ) j=j+2;
A) 2 B) 4 C) 6 D) 5
32. 若有循环:
int x=5,y=20;
do { y-=x; x+=2; }while(x<y);
则循环体将被执 行(A )。
A) 2 次 B) 1 次 C) 0 次 D) 3 次
33.以下由 do-while 语句构成的循环执行的次数是(B)。
int m = 8;
do { ++m; } while ( m < 8 );
A)一次也不执行 B)执行 1 次
C)8 次
D)有语法错,不能执行
34.下列语句序列执行后,i 的值是(A )。
A) 5 B) 6 C) 7 D) 8
29.下列语句序列执行后,j 的值是( C )。
int j=8, i=6;
while( i >4 ) i-=2;
- -j;
A) 5 B) 6 C) 7 D) 8
30.下列语句序列执行后,j 的值是( B )。
int j=9, i=6;
while( i-- >3 ) --j;
int a=3, b=4, x=5;
if( ++a==b ) x=++a*x;
A) 35 B) 25 C) 20 D) 5
9.下列语句序列执行后,k 的值是(C)。
int i=6,j=8,k=10,m=7;
if(i>j||m<k--) k++; else k--;

java基础知识测试题

java基础知识测试题

java基础知识测试题# Java 基础知识测试题## 一、选择题(每题2分,共20分)1. Java语言的特点是:- A. 面向过程- B. 面向对象- C. 编译型语言- D. 解释型语言2. 下列哪个不是Java的基本数据类型?- A. int- B. double- C. String- D. boolean3. Java程序的入口方法是:- A. main()- B. start()- C. run()- D. execute()4. 以下哪个是Java的关键字?- A. class- B. method- C. function- D. variable5. 以下哪个不是Java的控制流程语句?- A. if- B. switch- C. for- D. goto6. 哪个是Java的集合框架中最基本的接口? - A. List- B. Set- C. Map- D. Collection7. Java中,哪个类是所有类的父类?- A. Object- B. Class- C. System- D. String8. 以下哪个是Java的异常处理关键字?- A. try- B. catch- C. throw- D. All of the above9. Java中,哪个关键字用于定义接口?- A. class- B. interface- C. package- D. import10. 以下哪个不是Java的访问控制修饰符?- A. public- B. protected- C. private- D. global## 二、填空题(每空2分,共20分)1. Java语言的跨平台特性主要依赖于______。

2. 在Java中,所有的方法都必须在______中定义。

3. Java的异常分为两类:编译时异常和______。

4. Java中的______关键字用于实现多重继承的功能。

《Java基础入门》课后习题及答案

《Java基础入门》课后习题及答案

《Java基础入门》课后习题第1章Java开发入门一、填空题1、Java的三大体系分别就是_JavaSE_____、_JavaEE_____、_JavaME_____。

2、Java程序的运行环境简称之为JRE_____。

3、编译Java程序需要使用_javac_____命令。

4、javac、exe与java、exe两个可执行程序存放在JDK安装目录的bin______目录下。

5、path______环境变量用来存储Java的编译与运行工具所在的路径,而_classpath_____环境变量则用来保存保存Java虚拟机要运行的“、class”文件路径。

二、选择题1、以下选项中,哪些属于JDK工具?(多选)ABCDA、Java编译器B、Java运行工具C、Java文档生成工具D、Java打包工具2、Java属于以下哪种语言?CA、机器语言B、汇编语言C、高级语言D、以上都不对3、下面哪种类型的文件可以在Java虚拟机中运行?DA、、javaB、、jreC、、exeD、、class4、安装好JDK后,在其bin目录下有许多exe可执行文件,其中java、exe命令的作用就是以下哪一种?BA、Java文档制作工具B、Java解释器C、Java编译器D、Java启动器5、如果jdk的安装路径为:d:\jdk,若想在命令窗口中任何当前路径下,都可以直接使用javac与java命令,需要将环境变量path设置为以下哪个选项?BA.d:\jdk;B.d :\jdk\bin;C.d:\jre\bin;D.d:\jre;三、问答题1、简述Java的特点。

面向对象、跨平台性、健壮性、安全性、可移植性、多线程性、动态性等。

2、简述JRE与JDK的区别。

JRE(Java Runtime Environment,Java运行时环境),它相当于操作系统部分,提供了Java程序运行时所需要的基本条件与许多Java基础类,例如,IO类、GUI控件类、网络类等。

java基础考试题及答案

java基础考试题及答案

新员工考试一、选择题共30题,每题2分1.下面哪些是合法的标识符多选题A. $personsB. TwoUsersC. pointD. thisE. _endline答案A,B,E分析Java的标识符可以以一个Unicode字符,下滑线_,美元符$开始,后续字符可以是前面的符号和数字,没有长度限制,大小写敏感,不能是保留字this保留字;2.哪些是将一个十六进制值赋值给一个long型变量单选题A. long number = 345L;B. long number = 0345;C. long number = 0345L;D. long number = 0x345L答案 D分析十六进制数以0x开头,long型数以L大小写均可,一般使用大写,因为小写的l和数字1不易区分;3.下面的哪些程序片断可能导致错误多选题A. String s = "Gone with the wind";String t = " good ";String k = s + t;B. String s = "Gone with the wind";String t;t = s3 + "one";C. String s = "Gone with the wind";String standard = ;D. String s = "home directory";String t = s - "directory";答案B,D分析A:String类型可以直接使用+进行连接运算;B:String是一种Object,而不是简单的字符数组,不能使用下标运算符取其值的某个元素,错误;C:toUpperCase方法是String对象的一个方法,作用是将字符串的内容全部转换为大写并返回转换后的结果String类型;D:String类型不能进行减-运算,错误;4.point x处的哪些声明是句法上合法的多选题class Person {private int a;public int changeint m{ return m; }}public class Teacher extends Person {public int b;public static void mainString arg{Person p = new Person;Teacher t = new Teacher;int i;i = m;B. i = b;C. i = ;D. i = 30;E. i = .答案D,E分析A:m没有被声明过,不能使用;B:虽然b是类Teacher的public成员变量,但是在静态方法中不能使用类中的非静态成员;C:a是类Person的private成员,在类外不能直接引用;D:changeint m方法是public方法,并且返回一个int型值,可以通过类的实例变量p引用并赋值给一个int型变量;E:b是类Teacher的public成员变量,且是int型,可以通过类的实例变量t引用并赋值给一个int型变量;5.下面的代码片断多选题:1 public void create {2 Vector myVect;3 myVect = new Vector;4 }下面的哪些陈述正确A. 第二行的声明不会为变量myVect分配内存空间;B. 第二行的声明分配一个到Vector对象的引用的内存空间;C. 第二行语句创建一个Vector类对象;D. 第三行语句创建一个Vector类对象;E. 第三行语句为一个Vector类对象分配内存空间;答案A,D,E分析要为一个新对象分配空间必须执行new Xxx调用,new调用执行以下的操作:1.为新对象分配空间并将其成员初始化为0或者null;2.执行类体中的初始化;例如在类中有一个成员声明int a=10;在第一步后a=0 ,执行到第二步后a=103.执行构造函数;4.变量被分配为一个到内存堆中的新对象的引用;6.下面的哪些答案可以用以表示八进制值8 单选题A. 010B. 0x10C. 08D. 0x8答案 A分析八进制值以0开头,以0x开头的为十六进制值,八进制中不能出现数字8,最大只有7;1 class Person {2 public void printValueint i, int j {/…/ }3 public void printValueint i{/.../ }4 }5 public class Teacher extends Person {6 public void printValue {/.../ }7 public void printValueint i {/.../}8 public static void mainString args{9 Person t = new Teacher;10 10;11 }12 }第十行的声明将调用哪些方法单选题A. on line 2B. on line 3C. on line 6D. on line 7答案 D分析变量t是一个Person对象,但是它是用Teacher实例化的,这个问题涉及到java的编译时多态和运行时多态的问题,就编译时多态来说,t实际上是一个Person 类,这涉及到类型的自动转换将一个子类的实例赋值给一个父类的变量是不用进行强制类型转换,反之则需要进行强制类型转换,而且被赋值的变量实际上应该是一个子类的对象,如果对t调用了子类中新增的方法则造成编译时错误编译将不能通过,而在运行时,运行时系统将根据t实际指向的类型调用对应的方法,对于本例来说,10将调用t实际指向的Teacher类的对应方法;在java中,可以用一个子类的实例实例化父类的一个变量,而变量在编译时是一个父类实例,在运行时可能是一个子类实例;7.给出下面的代码:单选题x的取值在什么范围内时将打印字符串"second";A. x > 0B. x > -3C. x <= -3D. x <= 0 & x > -3答案 D分析x>0时打印"first",x>-3&&x<=0时打印"second",x<=-3时打印"third";这个题目没有什么难的,只要理解if语句的语法就可以了;8.下面的哪些赋值语句是不正确的单选题A. float f = ;B. double d = ;C. double d = ;D. double d = .答案 A题目:;浮点数的赋值是带有小数点的数字缺省是double型的,如果在浮点数后面加f 或者F则是float,后面加d或者D则是double,科学计数法形式的浮点数也是double型的,而double的精度比float高,将一个高精度的double赋值给一个低精度的float时需要进行强制类型转换,反之则不需要;9.给出下面的不完整的类代码: 单选题class Person {String name, department;int age;public PersonString n{ name = n; }public PersonString n, int a{ name = n; age = a; }public PersonString n, String d, int a {."处A. Personn,a;B. thisPersonn,a;C. thisn,a;D. thisname,age.答案 C分析:在同一个类的不同构造方法中调用该类的其它构造方法需要使用this…的形式,而且必须是在构造方法的第一行调用,这个和普通的方法重载调用的方式不同,普通的方法可以直接使用方法名加参数来调用,而且调用位置没有限制,因此答案A是不行的,B的语法就是错误的,D的错误在于在父类型的构造函数被调用前不能引用类的成员;构造方法是一个类对象实例化的起点虽然严格来说首先执行的并不是构造方法的第一个语句,而是内存的分配,因此在构造方法中不能将成员作为参数引用;public void test {condition 1B. condition 2C. condition 3D. finally答案 ad分析:如果try块中的语句在执行时发生异常,则执行从该处中断而进入catch块,根据异常的类型进行匹配,最前面的优先进行匹配比较,只要该异常是catch中指定的异常的子类就匹配成功进而执行相应的catch中的内容,而finally块中的内容无论是否发生异常都将被执行;10.给出下面的代码:单选题public class Test {void printValueint m{while --m > 10}public static void mainString arg {int i=10;Test t= new Test;i;}}输出将是什么A. The value is 8B. The value is 9C. The value is 10D. The value is 11答案:c此题考察的是do… while循环和 -- 操作符的知识,do…while最少被执行一次,在执行完do中的内容后判断while中的条件是否为true,如果为true的话就再执行do 中的内容,然后再进行判断,以此类推直到while的判断为false时退出循环执行循环后面的内容,而—操作符的规则是在变量右边的-- 将先进行运算,然后才是使变量的值减一,而在变量左边的是先将变量的值减一再运算;11.给出下面的代码:单选题1 public void modify {2 int i, j, k;3 i = 100;4 while i > 0 {5 j = i 2;7 k = k + 1;8 i--;9 }10 }哪些行在编译时可能产生错误;A. line 4B. line 6C. line 7D. line 8答案 c这个问题在前面有关变量的类型及其作用域的问题中讨论过,局部变量在使用前必须显式初始化,而代码中的变量k在使用前没有;12.给出下面的代码片断:单选题1 String str = null;2 if str = null && > 10 {34 }5 else if str = null & < 5 {67 }ntln"end"; }哪些行将导致错误A. line 1B. line 2C. line 5D. line 8答案 c此题需要将代码仔细看清楚,查询没有逻辑错误,if …else的使用没有问题,也没有拼写错误,错误在于第5行的“与”操作符的使用,逻辑操作符logical operator的“与”应该是&&,而&是位逻辑操作符bitwise logical operator的“与”,使用的对象不一样,逻辑操作符的“与”的左右操作数都应该是布尔型logical boolan的值,而位逻辑操作符的左右操作数都是整型integral值;13.给出下面的代码:单选题public class Person{static int arr = new int10;public static void mainString a {}}那个叙述是对的;A. 编译时将发生错误;B. 编译时正确但是运行时出错;C. 输出为0;D. 输出为null答案 cint型数组是类对象,它在类被加载时完成初始化,在前面题目中已经有叙述,由于是原始数据类型int,其初始值为0;public class Parent {int addValue int a, int b {.}B. public void addValue {.}C. public int addValue int a {.}D. public int addValue int a, int b throws MyException {.}答案bc此题涉及方法重载overload,方法重写override以及类派生时方法重写的规则;方法重载的规则是:一、参数列表必须不同,个数的不同完全可以,如果个数相同则参数类型的不同不能引起歧意,例如int 和long,float和double就不能作为唯一的类型不同;二、返回值可以不同,但是不能是重载时唯一的不同点这点和c++中不同,c++中返回类型必须一致;方法重写发生在类继承时,子类可以重写一个父类中已有的方法,必须在返回类型和参数列表一样时才能说是重写,否则就是重载,java中方法重写的一个重要而且容易被忽略的规则是重写的方法的访问权限不能比被重写的方法的访问权限低重写的另一个规则是重写的方法不能比被重写的方法抛弃throws更多种类的异常,其抛弃的异常只能少,或者是其子类,不能以抛弃异常的个数来判断种类,而应该是异常类层次结果上的种类;此题中答案a的错误就是重写的访问权限比被重写的方法的低,而b,c都属于重载,d的错误在于比被重写的方法抛弃了更多种类的异常;14.共有成员变量MAX_LENGTH是一个int型值,变量的值保持常数值100;使用一个短声明定义这个变量;单选题A. public int MAX_LENGTH=100;B. final int MAX_LENGTH=100;C. final public int MAX_LENGTH=100;D. public final int MAX_LENGTH=100;答案 dJava中共有变量使用public定义,常量变量使用final,另外注意的是修饰符的顺序,一个最完整的修饰是public static final int varial_a=100;这个顺序不能错,这和c++中也是不同的;而答案c恰恰错在修饰符的顺序上;15.下面的那个java源文件代码片断是对的多选题A. package testpackage;public class Test{.}B. import .;package testpackage;public class Test{.}C. import .;class Person{.}public class Test{.}D. import .;import .;public class Test{.}答案acdjava中的package语句必须是源文件中除去说明以外的第一条语句,导入包语句可以有几个,但是必须位于package语句之后,其它类定义之前,一个源文件中可以有几个类,但最多只能有一个是public的,如果有,则源文件的文件名必须和该类的类名相同;16.下面的哪些声明是合法的多选题A. long l = 4990;B. int i = 4L;C. float f = ;D. double d = ;E. double t = 0.9F.答案ade此题的考点是数字的表示法和基本数据类型的类型自动转换,没有小数点的数字被认为是int型数,带有小数点的数被认为是double型的数,其它的使用在数字后面加一个字母表示数据类型,加l或者L是long型,加d或者D是double,加f或者F是float,可以将低精度的数字赋值给高精度的变量,反之则需要进行强制类型转换,例如将int,short,byte赋值给long型时不需要显式的类型转换,反之,将long型数赋值给byte,short,int型时需要强制转换int a=int123L;;17.如下描述:多选题public class Parent {int change {…}}class Child extends Parent {}哪些方法可被加入类ChildA. public int change{}B. int changint i{}C. private int change{}D. abstract int chang{}答案ab这个题目的问题在第35题中有详尽的叙述;需要注意的是答案D的内容,子类可以重写父类的方法并将之声明为抽象方法,但是这引发的问题是类必须声明为抽象类,否则编译不能通过,而且抽象方法不能有方法体,也就是方法声明后面不能带上那两个大括号{},这些D都不能满足;18.给出下面的代码:单选题1 class Parent {2 private String name;3 public Parent{}4 }5 public class Child extends Parent {6 private String department;7 public Child {}8 public String getValue{ return name; }9 public static void mainString arg {10 Parent p = new Parent;11 }12 }哪些行将导致错误A. line 3B. line 6C. line 7D. line 8E. line 10答案 d第8行的getValue试图访问父类的私有变量,错误,参看前面有关变量类型及其作用域的叙述19.变量"result"是一个boolean型的值,下面的哪些表达式是合法的多选题A. result = true;B. if result { . }C. if result= 0 { . }D. result = 1答案abJava的boolean不同于c或者c++中的布尔值,在java中boolean值就是boolean 值,不能将其它类型的值当作boolean处理;20.类Teacher和Student都是类Person的子类单选题Person p;Teacher t;Student s;P,t和s都是非空值;ift instanceof Person { s = Studentt; }这个if语句导致的结果是什么A. 将构造一个Student对象;B. 表达式合法;C. 编译时非法;D. 编译时合法而在运行时可能非法;答案 cinstanceof操作符的作用是判断一个变量是否是右操作数指出的类的一个对象,由于java语言的多态性使得可以用一个子类的实例赋值给一个父类的变量,而在一些情况下需要判断变量到底是一个什么类型的对象,这时就可以使用instanceof了;当左操作数是右操作数指出的类的实例或者是子类的实例时都返回真,如果是将一个子类的实例赋值给一个父类的变量,用instanceof判断该变量是否是子类的一个实例时也将返回真;此题中的if语句的判断没有问题,而且将返回真,但是后面的类型转换是非法的,因为t 是一个Teacher对象,它不能被强制转换为一个Student对象,即使这两个类有共同的父类;如果是将t转换为一个Person对象则可以,而且不需要强制转换;这个错误在编译时就可以发现,因此编译不能通过;21.给出下面的类:单选题public class Sample{long length;public Samplelong l{ length = l; }public static void mainString arg{Sample s1, s2, s3;s1 = new Sample21L;s2 = new Sample21L;s3 = s2;long m = 21L;}}哪个表达式返回true;A. s1 == s2;B. s2 == s3;C. m == s1;D. m.答案 b前面已经叙述过==操作符和String的equals方法的特点,另外==操作符两边的操作数必须是同一类型的可以是父子类之间才能编译通过;22.给出下面有关List的表达式:多选题List l = new List6,true;哪些叙述是对的;A. 在没有其它的约束的条件下该列表将有6行可见;B. 一行的最大字符数是6C. 列表将允许用户多选;D. 列表只能有一项被选中;答案acList组件的该构造方法的第一个参数的意思是它的初始显式行数,如果该值为0则显示4行,第二个参数是指定该组件是否可以多选,如果值为true则是可以多选,如果不指定则缺省是不能多选;23.给出下面的代码:单选题class Person {String name,department;public void printValue{}}public class Teacher extends Person {int salary;public void printValue{}}下面的哪些表达式可以加入printValue方法的"doing the same as..."部分A. printValue;B. ;C. ;D. .答案 d子类可以重写父类的方法,在子类的对应方法或其它方法中要调用被重写的方法需要在该方法前面加上”super.”进行调用,如果调用的是没有被重写的方法,则不需要加上super.进行调用,而直接写方法就可以;这里要指出的是java支持方法的递归调用,因此答案a和b在语法上是没有错误的,但是不符合题目代码中说明处的要求:即做和父类的方法中相同的事情打印名字和部门,严格来说也可以选a和b;24.给出下面的代码片断:多选题1 switchm2 {3 k;4 case 2:56 }m为哪些值将导致"default"输出A. 0B. 1C. 2D. 3答案cd此题考察switch语句的用法,switch的判断的条件必须是一个int型值,也可以是byte、short、char型的值,case中需要注意的是一个case后面一般要接一个break 语句才能结束判断,否则将继续执行其它case而不进行任何判断,如果没有任何值符合case列出的判断,则执行default的语句,default是可选的,可以没有,如果没有default 而又没有任何值匹配case中列出的值则switch不执行任何语句;25.给出下面的不完整的方法:多选题12 { success = connect;3 if success==-1 {4 throw new TimedOutException;5 }6}TimedOutException 不是一个RuntimeException;下面的哪些声明可以被加入第一行完成此方法的声明;A. public void methodB. public void method throws ExceptionC. public void method throws TimedOutExceptionD. public void method throw TimedOutExceptionE. public throw TimedOutException void method答案b、c如果程序在运行的过程中抛出异常,而这个异常又不是RuntimeException或者Error,那么程序必须捕获这个异常进行处理或者声明抛弃throws该异常,捕获异常可以使用try{}catch{}语句,而抛弃异常在方法声明是声明,在方法的声明后面加上throws XxxxException,抛弃多个异常时在各异常间使用逗号,分隔,题目中的程序在运行时抛出的不是一个RuntimeException,所有必须捕获或者抛弃,而程序又没有捕获,所有应该在方法声明中声明抛弃;由于Exception是所有异常的父类,所有当然也可以代表RuntimeException了;26.下面的哪些答案可以正确表示一个十六进制数字10单选题A. 0xAB. 0x16C. 0AD. 016答案 a十六进制数以0x开头,以0开头的是八进制数;十六进制表示中的a,b,c,d,e,f依次为10,11,12,13,14,15;27.给出下面的代码:单选题1 public class Test {2} int m, n;3} public Test {}4} public Testint a { m=a; }5} public static void mainString arg {6} Test t1,t2;7} int j,k;8} j=0; k=0;9} t1=new Test;10} t2=new Testj,k;11} }12} }在编译时哪行将导致一个错误A. line 3B. line 5C. line 6D. line 10答案 d第10行的声明调用一个带两个参数的Test的构造方法,而该类没有这样的构造方法;二、简答题1.读如下程序,说出结果,并说明得出结果原因10分;public class BreakContinue {public static void mainString args {for int i = 0; i < 10; i++ {ifi == 3 || i == 5 {continue;}for int j = 0; j < i; ++j {if i + j > 5 {break;}}if i == 6 {break;}}}}答案:1,2,3,4,52.读程序,说出j值,并说明得出结果原因10分;public class Test {private static int j = 0;public static void mainString args {methodA0;}private static boolean methodBint k{j += k;return true;}public static void methodAint i {boolean b;b = i < 10 | methodB4;b = i < 10 || methodB8; 序分析:用情况语句比较好,如果第一个字母一样,则判断用情况语句或if语句判断第二个字母;importpublic class Ex26 {public static void mainString args{//保存用户输入的第二个字母char weekSecond;//将Scanner类示例化为input对象,用于接收用户输入Scanner input = new Scanner;//开始提示并接收用户控制台输入"请输入星期值英文的第一个字母,我来帮您判断是星期几:";String letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入char weekFirst = 0;switch weekFirst{case'm'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'M':"星期一Monday";break;case't'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'T':"由于星期二Tuesday与星期四Thursday均以字母T开头,故需输入第二个字母才能正确判断:"; letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = 0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'U' || weekSecond == 'u'{"星期二Tuesday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'H' || weekSecond == 'h'{"星期四Thursday";break;//控制台错误提示} else{"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else {//控制台错误提示"输入错误,只能输入一个字母,程序结束";break;}case'w'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'W':"星期三Wednesday";break;case'f'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'F':"星期五Friday";break;case's'://当输入小写字母时,利用switch结构特性执行下一个带break语句的case分支,以实现忽略用户控制台输入大小写敏感的功能case'S':"由于星期六Saturday与星期日Sunday均以字母S开头,故需输入第二个字母才能正确判断:"; letter = ;//判断用户控制台输入字符串长度是否是一个字母if == 1{//利用取第一个索引位的字符来实现让Scanner接收char类型输入weekSecond = 0;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能if weekSecond == 'A' || weekSecond == 'a'{"星期六Saturday";break;//利用或||运算符来实现忽略用户控制台输入大小写敏感的功能} else if weekSecond == 'U' || weekSecond == 'u'{"星期日Sunday";break;//控制台错误提示} else{"输入错误,不能识别的星期值第二个字母,程序结束";break;}} else{//控制台错误提示"输入错误,只能输入一个字母,程序结束";break;}default://控制台错误提示"输入错误,不能识别的星期值第一个字母,程序结束";break;}} else{//控制台错误提示"输入错误,只能输入一个字母,程序结束";}}}。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

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(i>j||m<k) k++; else k--;A) 5 B) 10 C) 8 D) 93.下列语句序列执行后,x 的值是( D )。

int a=2, b=4, x=5;if( a<--b ) x*=a;A) 5 B) 20 C) 15 D) 104.下列语句序列执行后,b 的值是( B)。

int a=2, b=4;if( a < - - b ) a*=a;A) 5 B) 3 C) 15 D) 105.下列语句序列执行后,m 的值是( D )。

int i=9, j=8, m=10, n=9;if( i<j || m - -<n ) i++; else j--;A) 6 B) 7 C) 8 D) 96.下列语句序列执行后,x 的值是( A )。

int a=3, b=4, x=5;if( ++a<b ) x=x+1;A) 5 B) 3 C) 4 D) 67.下列语句序列执行后,ch1 的值是( B )。

char ch1=‟A‟,ch2=‟W‟;if(ch1 + 2 < ch2 ) ++ch1;A) …A‟B) …B‟C) …C‟D) B8.下列语句序列执行后,x 的值是(B )。

int a=3, b=4, x=5;if( ++a==b ) x=++a*x;A) 35 B) 25 C) 20 D) 59.下列语句序列执行后,k 的值是(C)。

int i=6,j=8,k=10,m=7;if(i>j||m<k--) k++; else k--;A) 12 B)11 C) 10 D) 910.下列语句序列执行后,k 的值是(C )。

int i=10, j=18, k=30;switch( j - i ){ case 8 : k++;case 9 : k+=2;case 10: k+=3;default : k/=j;}A) 31 B) 32 C) 2 D) 3311.若a和b均是整型变量并已正确赋值,正确的switch语句是(D )。

A) switch(a+b); { ...... } B) switch( a+b*3.0 ) { ...... }C) switch a { ...... } D) switch ( a%b ) { ...... }12.下列语句序列执行后,r 的值是( C)。

char ch='8'; int r=10;switch( ch+1 ){case '7': r=r+3;case '8': r=r+5;case '9': r=r+6; break;default: r=r+8;}A) 13 B) 15 C) 16 D) 1813.设int 型变量a、b,float 型变量x、y,char 型变量ch 均已正确定义并赋值,正确的switch语句是(B )。

A) switch (x + y) { ...... } B) switch ( ch + 1 ) { ...... }C) switch ch { ...... } D) switch ( a + b ); { ...... }14.下列语句序列执行后,k 的值是(D )。

int x=6, y=10, k=5;switch( x%y ){case 0: k=x*y;case 6: k=x/y;case 12: k=x-y;default: k=x*y-x;}A) 60 B) 5 C) 0 D) 5415.下列语句序列执行后,r 的值是(B )。

char ch='A'; int r=6;switch( ch+5 ){case 'A': r=r+3;case 'B': r=r+5;case 'C': r-=6; break;default : r/=2;}A) 11 B) 3 C) 2 D) 916.以下for循环的执行次数是(B)。

for(int x=0;(x==0)&(x>4);x++);A)无限次B)一次也不执行C)执行4次D)执行3次17.下列语句序列执行后,j 的值是( A )。

int j=1;for( int i=5; i>0; i-=2 ) j*=i;A) 15 B) 1 C) 60 D) 018.以下for循环的执行次数是(B )。

for(int x=0;(x==0)&(x<4);x++);A)无限次B)一次C)执行4次D)执行3次19.下列语句序列执行后,j 的值是(D )。

int j=2;for( int i=7; i>0; i-=2 ) j*=2;A) 15 B) 1 C) 60 D) 3220.以下for循环的执行次数是(B )。

for(int x=0,y=0;(y!=0)&&(x<4);x++);A)无限次B)一次也不执行C)执行4次D)执行3次21.下列语句序列执行后,j 的值是( D)。

int j=0;for( int i=3; i>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 < 5; j+=3 ) i=i+j;A) 4 B) 5 C) 6 D) 724.下列语句序列执行后,k的值是(D)。

int j=8, k=15;for( int i=2; i!=j; i++ ) { j-=2; k++; }A) 18 B) 15 C) 16 D) 1725.下列语句序列执行后,k 的值是(B)。

int m=3, n=6, k=0;while( (m++) < ( -- n) ) ++k;A) 0 B) 1 C) 2 D) 326.下列语句序列执行后,i 的值是( D)。

int s=1,i=1;while( i<=4 ) {s*=i;i++;}A) 6 B) 4 C) 24 D) 527. 下列语句序列执行后,k 的值是(C )。

int m=3, n=6, k=0;while( m < n ) { ++k; m++; --n; }A) 0 B) 1 C) 2 D) 328.下列语句序列执行后,j 的值是(C )。

int j=8, i=6;while( --i >4 ) --j;A) 5 B) 6 C) 7 D) 829.下列语句序列执行后,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(x<y);则循环体将被执行(A )。

A) 2次B) 1次C) 0次D) 3次33.以下由do-while语句构成的循环执行的次数是(B)。

int m = 8;do { ++m; } while ( m < 8 );A)一次也不执行B)执行1次C)8次D)有语法错,不能执行34.下列语句序列执行后,i的值是(A )。

int i=10;do { i/=2; } while( i>1 );A) 1 B) 5 C) 2 D) 035.下列语句序列执行后,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( i>6 );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 < 1 );A)一次也不执行B)执行1次C)无限次D)有语法错,不能执行39. 若有循环:int x=5,y=20;do{ y-=x; x++; } while(++x<--y);则循环体将被执行(C )。

A)0次B)1次C)2次D)3次40.下列循环中,执行break outer语句后,所列(C)语句将被执行。

outer:for(int i=1;i<10;i++){inner:for(int j=1;j<10;j++){if(i*j>50)break outer;System.out.println(i*j);}next:A)标号为inner的语句B)标号为outer的语句C)标号为next的语句D)以上都不是41.下列循环中,执行continue outer语句后,(A)说法正确。

outer:for(int i=1;i<10;i++){inner:for(int j=1;j<10;j++){if(i*j>50)continue outer;System.out.println(i*j);}}A)程序控制在外层循环中并且执行外层循环的下一迭代B)程序控制在内层循环中并且执行内层循环的下一迭代C)执行标号为next的语句D)以上都不是2.找出下面各段程序中的错误:a)For (i=100 , i>=1 , i++)System.out.println(i);答案:For的F应该小写;For头中应当使用分号,而应当使用逗号;++应当为――答案:应当在case 0 中放臵一条break语句c)下面的代码应输入从19~1之间的所有奇数:for( i = 19 ; i >= 1 ; i+=2)System.out.println(i);答案:+=应该为-=d)下面的代码应输出从2到100之间的所有偶数:counter = 2;do{System.out.println(counter);counter += 2;}While (counter < 100)答案:while的W应当小写;<应当为<=3.指出并纠正下面各段代码中的错误:a)while(c<=5) {product *=5;c++;b)if ( gender == 1)System.out.println(“woman”);else ;System.out.println(“Man”);答案:a) 错误:漏掉了while循环的右花括号纠正:在最后加上右花括号b) 错误:else后的分号导致一个逻辑错误,第二个输出语句无论如何都会执行。

相关文档
最新文档