JAVA程序设计语言基础习题及答案.docx

上传人:b****8 文档编号:11484451 上传时间:2023-03-01 格式:DOCX 页数:34 大小:29.83KB
下载 相关 举报
JAVA程序设计语言基础习题及答案.docx_第1页
第1页 / 共34页
JAVA程序设计语言基础习题及答案.docx_第2页
第2页 / 共34页
JAVA程序设计语言基础习题及答案.docx_第3页
第3页 / 共34页
JAVA程序设计语言基础习题及答案.docx_第4页
第4页 / 共34页
JAVA程序设计语言基础习题及答案.docx_第5页
第5页 / 共34页
点击查看更多>>
下载资源
资源描述

JAVA程序设计语言基础习题及答案.docx

《JAVA程序设计语言基础习题及答案.docx》由会员分享,可在线阅读,更多相关《JAVA程序设计语言基础习题及答案.docx(34页珍藏版)》请在冰豆网上搜索。

JAVA程序设计语言基础习题及答案.docx

JAVA程序设计语言基础习题及答案

JAVA程序设计语言基础习题

(1)在Java中,负责对字节代码解释执行的是(B )。

A.垃圾回收器B.虚拟机C.编译器D.多线程机制

//编译器将JAVa源程序编译成字节代码,即虚拟机代码,然后由虚拟机将虚拟机代码换成相应硬件的机器代码,之后加以执行。

(2)Java语言中,负责并发管理的机制是(D)

A.垃圾回收 B.虚拟机C.代码安全 D.多线程

//多线程即是多任务的特殊形式,多个任务并发执行。

(3)下列叙述中,正确的是(C)

A.源文件扩展名为.jar

B.源文件名与public类名可以不相同

C.Java语言的标识符是区分大小写的

D.源文件中public类的数目不限

//A项扩展名应为.java;B项应为相同;D项public类只能有一个。

(4)Java为移动设备提供的平台是(A)

A.J2ME B.J2SE C.J2EE D.J2RE

//J2ME是致力于消费产品与嵌入式设备之间的最佳解决方案,特别是在移动通信设备,移动计算设备上应用广泛;J2SE是用于编写桌面/工作站应用软件;J2EE是前沿的JAVA技术平台,为服务器的计算提供了所有范围的企业级功能。

J2RE是JAVA的运行环境。

(5)JDK中提供的文档生成器是(C)

A.java.exe B.javap.exe 

C.javadoc.exe D.jdb.exe

//A中的是java语言解释器;B中的是java类文件反汇编器,用于分析类中的所有成员方法和成员变量,当然也包括构造方法;C中的是JavaAPI文档生成器;D中的是javadebug的缩写,既JAVA调试器。

(6)在Java语言中,不允许使用指针体现出的Java特性是(D)

A.可移植 B.解释执行 C.健壮性 D.安全性

//java不支持指针数据类型,它提供了字节码的检查机制还提供了自动的“内存垃圾”手机功能,提高了JaVA的稳定性和安全性。

(7)下列描述中,错误的是(A)

A.Java要求编程者管理内存

B.Java的安全性体现在多个层次上

C.Applet要求在支持Java的浏览器上运行

D.Java有多线程机制Java不需要编程者管理内存,提供了自动的“内存垃圾”的收集功能

//Java不需要编程者管理内存,提供了自动的“内存垃圾”的收集功能

(8)Java编译器将源代码翻译成独立于平台的格式是(B)

//Java编译器将源代码翻译成独立于平台的格式是字节码即bytecodes

(9)Java可以用来创建程序的工具集是(D)

//A中的JRE是JAVA运行环境。

B中JNI是JAVA本地接口。

C中的JVM是JAVA虚拟机。

D中的JDK是JAVA的工具集。

(10)Java语言与其他主要语言相比较,独有的特点是(C)

A.面向对象B.多线程C.平台无关性D.可扩展性

//用JAVA语言编写的各种程序可以不经过修改在各个平台系统上运行。

(11)下列属于合法的Java标识符是(A)

A._catB.5booksC.+staticD.-3.14159

//标识符是以字母、下划线或$符号开头的字母、下划线以及数字序列。

(12)按照Java的标识符命名规范,下列表示一个类的标识符正确的是(B) 

A.Helloworld B.HelloWorld 

C.helloworld D.helloWorld 

//用Java标识符来表示类名时,如果多于一个单词,则每个单词的第一个字母需要大写。

定义变量名时,若一个变量名是有一个以上单词所组成的,则第一个单词之后的所有单词都以大写字母开头。

(13)在Java中,表示“回车”的转义字符是(B)

A.\nB.\rC.\bD.\t

//A中的\n是回车并且换行的意思。

B中的\r是回车的意思(即回到本行的开头)。

C中的\b是向前退格的意思。

D中的\t是横向跳格的意思。

(14)char类型的取值范围是(B)

A.2-7~27-1B.0~216-1

C.-215~215-1D.0~28-1

//JAVA中字符型是用16位的Unicode码来表示的。

(15)十进制数16的16进制表示格式是(A)

A.0x10B.0x16C.0xAD.16

//十进制数16表示的二进制数为00010000,然后再将其化为十六进制的0X10

(16)下列的(A)赋值语句是不正确的

A.floatf=;B.double-12;

C.floatd=f;D.doublef=E0;

//表示float型数时在后面加f或F,浮点型数据采用科学计数法表示时尾数必须有,小数部分可有可无;阶码必须有,且必须是整数。

(17)下列的(D)赋值语句是正确的

A.chara=12;B.inta=12.0;

C.inta=;D.inta=(int)12.0;

//浮点型转化为整型数据,必须用强制类型转换。

(18)"++"运算符的操作数个数是(A)

 A.1个  B.2个  C.3个  D.4个

//++为单目运算符,操作数个数为1。

(19)在switch(expression)语句中,expression的数据类型不能是(A)

 A.double  B.char  C.byte  D.short

//表达式必须是符合byte,char,short和int类型的表达式,而不能使用浮点类型或long类型,也不能是一个字符串。

(20)阅读下列代码

publicclassTest{

publicstaticvoidmain(Stringargs[]){

System.out.println(~(0xa5)&0xaa);}}

其运行结果是(B)

A.0xa5 B.10 C.0x50 D.0xaa

//~(0XA5)为0X5A,然后与0XAA相与得0X0A,因为计算机输出的结果为十进制,所以结果为10。

(21)阅读下列代码

publicclassTest{

publicstaticvoidmain(Stringargs[]){

System.out.println(9>>>2);}}

其运行结果是(B)

A.4 B.2 C.3 D.1

//9的二进制形式为00001001,无符号右移2位的0010,十进制为2

(22)阅读下列代码段

intx=3;

while(x<9)

x+=2;

x++;

while语句成功执行的次数是(D)。

次B.2次次次

//如果在while(x<9)后加入大括号,括住x+=2;再加入输出语句System.out.println(“x=”+x);则会输出x=5x=7x=9,成功执行while语句3次。

但是如果将x++;也括到大括号中,则输出x=5x=8,成功执行while语句2次。

(23)阅读下面程序:

importjava.*;

publicclassTypeTransition

{publicstaticvoidmain(Stringargs[])

{chara='h';

inti=100,j=97;

intaa=a+i;

System.out.println("aa="+aa);

charbb=(char)j;

System.out.println("bb="+bb);

}

}

如果输出结果的第二行为bb=a,那么第一行的输出是(C)

A.aa=1B.aa=vC.aa=204D.aa=156

//字符h的Unicode值为104,所以a转化为整型数据时为104,故aa为204

(24)给出下列的代码,哪行在编译时可能会有错误?

①publicvoidmodify(C){

②inti,j,k;

③i=100;

④while(i>0){

⑤j=i*2;

⑥System.out.println("Thevalueofjis"+j);

⑦k=k+1;

⑧}

⑨}

A.line4B.line6C.line7D.line8

//⑦k=k+1;中的k没有初始化,所以出错。

(25)下列程序中,要求按照从小到大的顺序输出1到100之间所有能被7整除的数字,请将下列程序补充完整。

注意:

请勿改动main()主方法和其他已有语句内容,仅在横线处填入适当语句。

publicclassExample1

{publicstaticvoidmain(Stringargs[])

{inti=1;

【do】

{if(【i%7==0】)

System.out.print(i+",");

【i++】

}while(i<100);

System.out.println();

}

}

(26)下面的程序中,随机产生100个学生的成绩,并计算他们的平均成绩。

学生的成绩按照5级打分制,A表示4分、B表示3分、C表示2分、D表示1分、E表示0分,平均成绩用浮点数表示。

请填写横线处的内容。

importjava.math.*;

publicclassAverageScore

{publicstaticvoidmain(Stringargs[])

{floataver=0;

inta=0,b=0,c=0,d=0,e=0;

for(【inti=0】;i<100;i++)

{doublesd=Math.random()*5+'A';

charscore=【(char)sd】;

【switch】(score)

{case'A':

aver+=4;a++;break;

case'B':

aver+=3;b++;break;

case'C':

aver+=2;c++;break;

case'D':

aver+=1;d++;break;

case'E':

aver+=0;e++;break;

default:

break;

}

}

aver/=100;

System.out.println("平均分数为"+aver+",学生人数100");

System.out.println("得A分的学生有"+a+"人");

System.out.println("得B分的学生有"+b+"人");

System.out.println("得C分的学生有"+c+"人");

System.out.println("得D分的学生有"+d+"人");

System.out.println("得E分的学生有"+e+"人");

}

}

(27)下面程序中的continue的作用是什么?

有、没有标号,运行结果相同吗?

publicclassSignContinue

{publicstaticvoidmain(Stringargs[])

{label:

for(inti=0;i<3;i++)

{for(intj=1;j<3;j++)

{if(j!

=i)continuelabel;

System.out.println(i+j);

}

}

}

}

//continue的作用是跳过label所指语句块中所有余下部分的语句,回到label语句块的条件测试部分继续执行。

有标号的运行结果为2;无标号的运行结果是24。

 

第三章课后的8题,很简单,略。

第三章课后的9题,需要分别取出百位数,十位数与个位数。

可以使用下面语句实现;设i为一个三位数,a为百位数,b为十位数,c为个位数。

则有a=i/100;b=j/10%10;c=i%10;

第三章课后的9题,设置三层循环,外层i控制输出5行,中层j控制每行开头的空格,内层k控制*号的输出。

程序如下:

/*打印图案:

每行打印5个星号,每个星号之间空两个空格*/

publicclassxinghao

{publicstaticvoidmain(Stringargs[])

{inti,j,k;

for(i=1;i<=5;i++)

{for(j=0;j<=3*(i-1);j++)

System.out.print("");

for(k=1;k<=5;k++)

System.out.print("*");

System.out.println();

}

}

}

或者:

publicclassPrintStar

{publicstaticvoidmain(String[]args)

{for(inti=0;i<5;i++)

{Stringnum="";

for(intk=0;k

{System.out.print(num);}

for(intj=0;j<5;j++)

{System.out.print("*");}

System.out.println();

}

}

}

 

JAVA程序设计课后习题

第一章

一、单项选择题

1、Java语言是有____发明的。

A、Microsoft公司B、Borland公司C、IBM公司D、SUM公司

2、JAVA语言由____平台组成。

A、J2SE、J2EE、J2MEB、J2SE、J2EE、J2SDK

C、J2EE、J2ME、J2EDD、J2SE、J2EE、J2ME、Docs

3、JAVA语言的特点有____.

A、跨平台、健壮、安全、指针B、跨平台、健壮、安全、垃圾回收

C、跨平台、健壮、安全、多继承D、跨平台、健壮、安全、JCreator

4、字节码文件的后缀为____.

A、objB、exeC、javaD、class

5、JCreator是____.

A、Java的开发工具B、可视化继承开发工具

C、字处理软件D、类似J2SDK工具

6、Java的开发环境必备多大软件有____

A、J2SDK、编辑工具B、JCreator

C、J2SEDocumentationD、A、B和C

7、Java语言对大小写要求____

A、一般B、严格C、敏感D、忽略

8、在DOS环境下编译的Java程序的命令是____

A、javacB、javaC、cmdD、c:

\j2sdk\bin

9、Java是从那种语言改进并重新设计?

A、AdaB、C++C、okaD、fobase

10、将Java程序可以简单的分为几种____

A、2B、3C、4D、5

二、填空题

1、本章描述Java的特点有____、____、____、____、____、____、____、____、____、____,其中最重要的特点是____。

2、Java程序类型可以简单的分为____、____.

3、Java源代码文件的后缀为____,字节码文件后缀为____。

4、JCreator是一个____工具。

5、Java是一个____语言,它可以同时运行多个线程处理多个任务。

6、SUN公司网站Java的网址是____。

 

第二章

一、单项选择题

1、Java语言的注释有____种类型。

A、2B、4C、3D、5

2、依据“匈牙利”命名法,合法的标示符是____。

A、abc.clsB、_studentC、3724_aD、class

3、Java的基本数据类型有____

A、整型、浮点型、数组和接口B、整型、浮点型、字符型和布尔型

C、浮点型、字符型、整型和字符型D、整型、字符型、浮点型和数组

4、64为的数据类型是____

A、intB、shortC、longD、float

5、设a为布尔型变量,合法的赋值是____

A、a=”true”B、a=tC、a=TrueD、a=true

6、Unicode编码采用____位bit

A、8B、32C、64D、16

7、合法的声明是____

A、longa=356lB、chara=”abc”

C、bytea=256D、booleana=True

8、intabc[]={12,45,75,1,58,46},改数组的第一个和最后一个下标分别是____

A、0、5B、1、6C、0、6D、1、5

9、____是Java的保留字?

A、shortsB、newC、IntD、Public

10、转义符”\n”表示的意思是____

A、回车B、换行C、退格D、进纸

二、填空题

1、在____情况下才使用转义符

2、布尔类型的值有____和____

3、在类中声明的变量称为____,在方法中声明的变量是____

4、使用数组可以分为三个过程,它们是____、____、和____

5、浮点型有float和____,它们的变量占内存空间分别为____和____

6、Java采用的字符编码是____

 

第三章

一、单项选择

1、下面那种运算符不是Java语言中的逻辑运算符____

A、&&B、||C、&D、!

2、55%7结果是____

3、下面____表达式是正确的

A、++9B、++a+bC、++(a==b)D、++a=b

4、设a初值为12,运算a*=2+3后a值为:

____

A、60B、27C、编译出错D、38

5、设a初值为12,运算a/=a+a值为:

____

A、0.5B、1C、13D、0

6、10>20-17结果是____

A、falseB、trueC、不合法的表达式D、-17

7、X的初值是1,经过((Y=1)==0))&&((X=6)==6))后X的值为____

A、1B、6C、trueD、false

8、X的初值是1,经过((Y=1)==1))&&((X=6)==6))后X的值为____

A、1B、6C、trueD、false

9、执行for(I=1;I<=10;I++)循环后,I的值是____

A、1B、10C、11D、9

10、Java语言中用____语句来实现“当型循环”

A、whileB、do-whileC、switchD、for

二、填空题

1、Java运算符按功能可以分为:

2、Java程序的控制结构分为:

3、Java中break语句的作用:

4、Java中continue语句的作用为:

5、____、____、____类型数据可以参加关系运算

 

第四章

一、单项选择题

1、在下面的代码中,有____个对象被创建

Employeeemployee_1,employee_2,employee_3;

Employee_1=newEmployee();

Employee_2=newEmployee();

A、0B、1C、2D3、

2、当编译和运行一下代码是,将会得到____结果

Classcompany

{

Protectedcompany

{

For(inti=1;i<5;i++)

System.out.println(i);

}

Publicstaticvoidmain(String[]args

{

CompanymyCompany=newcompany();

}

}

A、编辑错误,构造方法不用protected声明

B、运行错误

C、输出1到5

D、输出1到4

3、当最后一行代码执行结束,x的结果是:

Stringa=”VB”;

Stringb=”Java”;

Stringx=newString(a);

A=b;

A、“VB”B、“Java”C、nullD、其他

4、创建一个类,有一个变量不允许其他类访问,应添加____关键字修饰改变量

A、publicB、staticC、protectedD、private

5、编译和执行一下语句,将得到____结果

PrivateclassDay

Publicclasssample

{

Inty;

Protectedfloatx;

Publicstaticvoidmain(String[]args)

{

System.out.println(“ok”)

}

}

A、编译错误:

类Day不能是私有的

B、编译错误:

实例变量x不能用prortected修饰

C、编译错误:

实例变量y缺乏修饰符

D、输出字符串“OK”

6、编译运行以下代码,将会得到____结果

Publicclasssample

{

Inta;

Publicstaticvoidmain(String[]args)

{

A=a+2;

System.out.println(“a=”+a)

}

}

A、0B、1C、编译错误D、null

7、静态变量可以被____所访问

A、被定义为public的方法B、被定义为private的方法

C、静态方法D、其他

8、父类的静态方法____被子类覆盖

A、能B、不能

9、抽象方法____用static修饰

A、能B、不能

二、填空题

1、为类成员指定____访问修饰符,不允许其他该类的成员能访问改成员

2、对象是____和____的集合

3、类的成员变量可分为____和____两种

4、子类通过____关键字调用父类的一个构造方法

5、使用关键字____来声明抽象方法

 

第五章

一、单项选择题

1、Java异常处理主要是指____

A、ErrorB、ExceptionC、throwD、throws

2、Exception是____子类

A、ErrorB、ObjectC、ThrowableD、lang

3、RuntimeException的父类是____

A、ExceptionB、exceptionC、ObjectD、Error

4、对数组进行处理时应该用异常处理机制,最常用到的异常类是____

A、ArithmeticExceptionB、ArrayIndexException

C、ArrayStoreExceptionD、IndexOutOfBoundsException

5、下列说法正确的是____

A、异常是可有可无的B、异常的好处是防止出错

C、异常可以方便调试程序D、Java异常和VFP一样

6、Java系统中的异常类总数是____

A、50个以内B、80个以内

C、100个以内D、很多,难以统计

7、抛出异常常用到的保留字是____

A、throwsB、ThrowC、cat

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

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1