西工大作业集JAVA语言程序设计作业集.docx
《西工大作业集JAVA语言程序设计作业集.docx》由会员分享,可在线阅读,更多相关《西工大作业集JAVA语言程序设计作业集.docx(77页珍藏版)》请在冰豆网上搜索。
西工大作业集JAVA语言程序设计作业集
第一章测试题
―.单选题
1:
Java技术是由_______公司推出来的。
(A)SunMicrosystems(B)Microsoft(C)IBM(D)BEA。
答案
A
2:
对Java相关的技术叙述正确的_______。
(A)Java仅仅是一种编程语言;
(B)Java只是一种虚拟的平台;
(C)Java即是开发环境又是开发平台;
(D)Java就是JavaScript。
答案
C
3:
对Java的特点叙述不正确的是_______。
(A)Java是一种筒单.小型的语言;
(B)Java中没有了指针算法,但实际上还是隐藏了指针;
(C)Java是一种完全面向对象的程序设计语言;
(D)Java是一种绝对安全的语言。
答案
D
4:
对Java的平台无关性叙述不正确的是_______。
(A)用Java编写的程序可以很容易地移植到其他硬件平台上;
(B)用Java编写的程序可以很容易地移植到其他软件平台上;
(C)用Java编写的程序可以不加修改地移植到任何平台上;
(D)Java并没有实现完全的跨平台。
答案
D
5:
对JVM叙述不正确的是_______。
(A)JVM的全称是JavaVirtualMachine;
(B)JVM是一种计算机硬件技术,它是Java程序的运行平台;
(C)JVM是在计算机硬件系统上用软件实现的一台假想机;
(D)Java程序在执行时,JVM把Java字节码解释成机器码。
答案
B
6:
对Java语言的特点描述不正确的是_______。
(A)Java是一个迅速发展的网络编程语言,它是一种新的计算概念;
(B)它简单.面向对象.分布式.解释执行.不依赖于机器的结构;
(C)具有可移植性.鲁棒性.安全性,并且是多线程的.动态的,具有很高的性能;
(D)Java没有利用网络。
答案
D
7:
对象不具有的性质是_______。
(A)封装性(B)继承性(C)多态性(D)重载性。
答案
D
8:
下列标识符中_______是Java中的关键字。
(A)import(B)include(C)define(D)end
答案
A
9:
Java(JDKl.O)正是发表于_______。
(A)1996年5月;(B)1995年5月;(C)1994年6月;(D)1995年4月。
答案
B
10:
下列不是Java开发工具的是_______。
(A)Java解释器;(B)Javah头文件生成器;
(C)Java编译器;(D).JavadocAPI文件产生器。
答案
C
二.填空题
1:
Java的语言特点有_______。
答案
简单,面向对象,分布式,解释执行,鲁棒,安全,体系结构中立,可移植,髙性能,多线程,以及动态性
2:
Java的口号是_______。
答案
WriteOnce,RunAnywhere
3:
Java程序分为_______和_______。
答案
Java应用程序。
Java小程序
4:
对Java小程序来说,它必须作为_______类或_______类的一个子类,继承_______或_______类的类是小程序的主类
答案
Applet。
JApplet。
Applet。
JApplet
5:
常用的Java程序开发工具有_______,_______,_______。
答案
美国Sun公司的JavaSDK,NetBeans。
微软公司的VisualJ++。
Borland公司的JBuilder等
6:
JavaSDK的意思是_______。
答案
SoftwareDevelopmentkit
7:
Java命令行方式的编程环境由一系列_______,_______,_______。
答案
目录文件。
类库字节码文件。
动态连接库DLL文件
8:
Java应用程序和Java小程序的主要区别是_______。
答案
小程序中没有main()方法
9:
一个源文件中最多只能有一个_______类,其他类的个数_______。
答案
Public。
无限
10:
包语句的标识符是_______,引入语句的标识符是_______,接口定义的标识符是_______,类定义的标识符是_______。
答案
Package。
Import。
interfaceDefinition。
classDefinition
三.简答题
1:
什么叫Java虚拟机?
答案
Java虚拟机是一个想象中的机器,在实际的计算机上i过软件模拟来实现。
Java虚拟机有自己想象中的硬件,如处理器.堆栈.寄存器等,还具有相应的指令系统。
2:
Java程序分哪两类?
各有什么特点
答案
Java程序有Java应用程序和Java小程序,无论是Java应用程序还是Java小程序,它们都是以类为基础构建的。
Java应用程序中有main()函数,而Java小程序没有。
3:
写出显示信息为”welcometoJavaword!
”的Java小程序。
答案
importJava.awt.Graphics;
importJava.applet.Applet
publicclassHelloAppletextendsApplet{
publicvoidpaint(Graphicsg){
g.drawstring("welcometoJavaword!
!
!
",20,20);
}
}
4:
Java的开发工具有哪些?
各有什么作用?
答案
常用的Java程序开发工具有:
美国Sun公司的JavaSDK,NetBeans;微软公司的VisualJ++;Borland公司的JBuilder等。
目前JavaSDK是命令行开发工具,而NetBeans,VisualJ++JBuilder是集成环境开发工具。
5:
Java应用程序和小程序的开发上有什么不同的地方吗?
答案
Java应用程序和小程序开发有共同的步骤如:
创建新程序.输入和编辑程序.对程序进行编译。
但编译之后还需要为Java小程序创建相应的HTML网页文件,步骤为:
创建HTML文件.输入HTML文件.运行HTML文件。
第二章测试题
一.单选题
1:
下面对标识符的说法不正确的是_______。
(A)标识符可以以数字开头;(B)标识符可以以字母开头;
(C)标识符可以以下划线开头;(D)标识符可以以美元符号开头。
答案
A
2:
以下不属于Java分隔符的是_______。
(A)单行和多行注释;(B)空格.回车和制表符;
(C)句号.引号;(D)大括号.分号.逗号和冒号。
答案
C
3:
下列_______数据类型是Java和C不同的。
(A)接口;(B)数组;
(C)字符串;(D)大括号.分号.逗号和冒号。
答案
A
4:
以下变量定义方式正确的是_______。
(A)类型标识符[[=初始赋值];标识符];
(B)类型标识符[[=初始赋值],标识符];
(C)类型标识符[[=初始赋值]标识符];
(D)类型标识符[[初始賦值],标识符]。
答案
B
5:
以下_______运算符返回的是bool的类型。
(A)&&.;(B)||;(C)!
;(D)0。
答案
D
6:
关于bool类型说法不正确的是_______。
(A)其完整写法为boolean;
(B)布尔数据只有两个值:
true和false;
(C)可以如下方式定义布尔变量:
booleanmouseon=true;
(D)Java中的布尔类型不能转换成数字。
答案
C
7:
缺省值错误的是_______。
(A)数值数据,缺省数值为相应类型的零;
(B)字符的缺省初值为\0000;
(C)布尔初值为false.;
(D)Object类型初值为null。
答案
B
8:
下列对运算符的说法不正确的是_______。
(A)++和--是算术运算符;
(B)Java语言对运算符的优先级.结合性和求值顺序有明确的规定;
(C)+,-,*,/和%运算符改变操作数的值;
(D)!
=(不等于)和==(等于)是双目运算符。
答案
C
9:
下列不是Java数值计算方法的是_______
(A)abs(),sin(),cos()
(B)tan(),asin(),acos()
(C)floorO,pow(a,b)
(D)strcopy(),conn()
答案
D
二.填空题
1:
Java标识符是大小写_______(敏感/不敏感)的,_______(没有/有)字符数
的限制。
答案
敏感。
没有
2:
保留字(reservedword)又称为_______,是Java语言本身使用的标识符,它有其特定的语法含义。
所有的Java保留字将不能被用做_______。
答案
关键字。
标识符
3:
程序中所处理的数据表现为_______和_______两种形式。
答案
常量。
变量
4:
Java的整型常数有_______、_______和_______三种形式。
答案
十进制。
十六进制。
八进制
5:
Java的实型常量有标准和科学计数法两种表现形式。
标准形式由_______和_______组成,且必须有_______,如_______等。
科学计数法形式,数字中带_______。
答案
数字。
小数点。
小数点。
0.123,4.56,789.0。
e或E
6:
字符型char数据是由一对_______括起来的单个字符。
Java使用_______的16位字符集,而不仅仅为_______字符集,因此char类型的范围_______。
答案
单引号。
Unicode格式。
ASCII。
0到65535
7:
字符串常量是用_______括起来的零个或多个字符(包括转义字符)。
例如:
空串为_______。
答案
双引号。
""
8:
在Java语言中,毎个字符串常量被作为字符串类_______的对象来处理。
答案
String
9:
在Java语言中,字符串变暈是对象,是_______(复合类型/简简单类型)。
有_______和_______两种字符串变量类String类是常量类,初始化后不能改变StringBuffer类是_______,可以修改。
答案
复合类型。
Strig类。
StringBuffer类。
字符串缓冲区
10:
六种关系运算符分别_______,!
=(不等于)和==(等于)。
运算符“==”和“!
=”的运算优先级__________另外四个关系运算符。
答案
>(大于).<(小于).>=(大于或等于).<=(小于或等于)。
低于
11:
Java中提供了7种位运算符,位逻辑运算符是_______。
算术移位运算符是_______。
答案
~(按位取反);&(与运算);丨(或运算);^(异或运算)。
<<(左移);>>(算术右移)和>>>(逻辑右移)
12:
(a>b)?
a:
b;将返回_______。
答案
a和b中较大的那个数值
13:
inta,charb;将整形a将强制转换为字符型b的语句为_______。
答案
b=(char)a
14:
a+b-c先执行_______,再执行_______。
a=b=c先执行_______再执行_______。
答案
a+b。
a+b-c。
b=c。
a=b
15:
Java标准输出有_______方法和_______方法。
要控制输出数据的格式,可以使用_______方法和_______方法。
答案
Print。
println。
printf。
format
三.简答题
1:
写出下列程序的输出结果,并予以说明。
答案
6异或3
2:
写出下列使用Math方法的程序的输出结果。
答案
程序运行结果如下:
半径为3.0的圆面积是:
28.XX8138
直角三角形直角边为3.0和4.0时的斜边长为:
5.0
-8和-4的较大者是:
一4
-18的绝对值是:
18
不小于45.7的最小整数是:
46.0
不大于45.7的最大整数是:
45.0
sin25度的值是:
0.XX069944。
3:
写出下列程序的结果。
答案
程序运行结果如下:
2005的二进制是:
XX
2005的八进制是:
3725
2005的十六进制是:
7d5
iobj=123
i=123
iobjl==iobj2?
true
iobj=2128
num=4133
4:
编写程序将整数15左移2位,右移2位。
答案
第三章测试题
一.单选题
1:
Java语言中,整形常数123占有的存储字节数是_______。
(A)1(B)2(C)4(D)8
答案
B
2:
下列if-else语句正确的是_______。
(A)if
(1)语句1[else语句2]
(B)if(0)语句1
(C)if(5>3)语句1[else语句2]
(D)if5=3)语句1[else语句2]
答案
C
3:
用if-then-else语句,_______使用缩排。
(A)不能(B)建议(C)必须(D)有时必须
答案
B
4:
有循环结构的程序中,应该注意_______。
(A)循环体中的程序不应太长
(B)避免条件表达式永远为真值
(C)能够使用while循环,尽量使用while循环
(D)有时必须使用循环结构
答案
B
5:
成了这个循环语句后,y的值将变成_______。
(A)0(B)250(C)50(D)51
答案
C
6:
成了这个循环语句后,x的值将变成_______。
(A)0(B)250(C)50(D)51
答案
A
7:
这个循环中,循环体内的语句共执行了_______次,循环判断了_______次。
(A)0(B)250(C)50(D)51
答案
略
8:
这段代码中,每一次循坏时,首先执行_______语句。
(A)intx=10(B)x>0
(C)x--(D)System.out.println(i)
答案
B
9:
那么每一次循环中最后执行的是_______语句。
(A)intx=10(B)x>0
(C)x--(D)System.out.println(i)
答案
C
二.多选题
10:
switch语句的选择变量可以_______类型的。
(A)int(B)boolean(C)char.(D)float
答案
AC
11:
来区别每一个switch分支的保留字是_______。
(A)choice(B)condition(C)case(D)break
答案
C
12:
果switch语句的选择变量的值与每一个case语句中都不匹配,将使用_______选择。
(A)any(B)default(C)none(D)other
答案
B
13:
switch语句中是可选的语句是_______。
(A)switch(B)default(C)other(D)case
答案
B
三.填空题
1:
在Java中,用_______声明一个新的对象。
答案
New
2:
在Java语言中使用的分支语句有_______语句和_______语句。
答案
if–else。
switch
3:
Java语言提供_______循环语句._______循环语句和_______循环语句三种形式。
答案
while。
do-while。
for
四.问答题
1:
阅读以下程序,
如果myScore=96,则程序将输出什么?
如果mySore=50,则程序将输出什么?
你认为这符合逻辑吗?
如果不合逻辑该如何修改?
答案
如果myScope=96,程序将输出:
Congratulatetoyou!
Youscoreisverygood!
。
如果myScope=50,程序将输出:
Youscoreisverygood!
makegreatefforts!
当成绩为50分时,程序还说“youscoreisverygood!
”,这说明这个程序不符合逻辑。
应该改为
这是因为,if(myScore>=90)这个语句如果是真的话,应该执行两个语句,而如果不使用“将它们围起来,则第2个语句就不属于if(myScore>=90)了。
这样,程序就不管在什么情况下都会执行这一句。
2:
写一个程序段,判断成绩(myScope),若小于60,则输出bad;若大于60,则输出middle;若大于80,就输出good;若大于90时,输出better。
答案
这个程序有多种写法,下面列出了其中的一种:
3:
现有一个如下的数组:
Stringweeks[]={“Monday”;“Tuesday”;“Wednesday”;“Thursday”;“Friday”;“Saturday”;“Sunday”;};请分别使用while循环和for循环,写一个程序将它们的值打印到屏幕上。
(1)使用while语句:
(2)使用for语句:
答案
4:
在下列程序片段中,你认为变置condition是______型的。
你认为这个程序存在什么问题?
答案
b,能够作为条件表达式的变量,只能是boolean型的。
在这个程序中,循环体内并未改变condition的值。
如果condition是true的话,则这个循环将永远不会结束;而如果condition是fasle的话,还好,只是不执行这个循环体。
5:
判断以下命题是否正确,如果不正确,请举例说明。
for循环都能够改写成while循环()while循环都能够改写成for循环()
答案
for循环都能够改写成while循环(对)
while循环都能够改写成for循环(错)
例如,上一题中的while循环就无法改写成为for循环。
6:
根据以下要求,使用switch语句编写程序。
某校使用“A”,“B”,“C”,“D”,“E”来为学生打成绩,请编写一个程序,当:
成绩为A时,打印出“Excellent!
”,
成缋为B时,打印出“Good!
”;
成绩为C时,打印出“Average!
”;
成绩为D时,打印出“Pool!
”;
成绩为E时,打印出“Failure!
”。
假设本程序用来打印学生甲的成绩情况,而学生甲的成绩“B”存放在变量myScope。
答案
第四章测试题
一.判断题
1:
数组在定义时,不能分配空间。
只有定义完后,可以给数组分配空间。
答案
是
2:
可以这样定义数组:
int[]num=newint[3]{l,2,3};
答案
否
判断下列定义二维数组的方法是否正确。
3:
int[][]num=newint[][]{l,2,3,4,5,5};
答案
否
4:
int[][]num=newint[][]{{1,2,3},{4,5,5}};
答案
是
5:
int[][]num=newint[2][]{{l,2,3},{4,5,5}};
答案
否
6:
int[][]num={{l,2,3},{4,5,6}};
答案
是
7:
对象数组在创建之初会自动初始化成null,由原始数据类型构成的数组会自动初始化成零(针对数值类型),(Char)0(针对字符类型)或者false(针对布尔类型)。
答案
是
8:
int[]al={1,2,3,4,5};
int[]a2;
a2=al;此复制方法是否正确。
答案
是
9:
float[][]A=newfloat[26][26];
A[0][]={0.731,0.012,0.001,0.230,•••}可以定义一个float数组
答案
否
10:
数组中可以有不同的数据类型。
答案
否
二.填空题
1:
复制数组使用的方法是_______。
答案
**()
2:
一维数组的定义格式为_______,二维数组的定义格式为_______。
答案
类型数组名[]或类型[]数组名。
类型数组名[]或类型[][]数组名或类型[]数组名[];
三.简答题
1:
阅读下列代码,写出其输出。
classTwoDAgain{publicstaticvoidmain(Stringargs[]){
inttwoD[][]=newint[4][];
twoD[0]=newint[l];
twoD[l]=newint[2];
twoD[2]=newint[3];
twoD[3]=newint[4];
inti,j,k=0;
for(i=0ji<4;i++)
for(j=0;j
for(i=0;i<4;i++){for(j=0;j
答案
该程序产生的输出如下:
0123456789
2:
阅读下列代码写出其输出。
publicclassArrays{
publicstaticvoidmain(String[]args){
int[]al={1,2,3,4,5}
int[]a2;
a2=al;
for(inti=0;ia2[i]++;
for(inti=0;iprt("al["+i+"]="+al[i]);}
staticvoidprt(Strings){
System,out.println(s);
}
}
答案
运行结果是:
al[0]=2
al[l]=3
al[2]=4
al[3]=5
al[4]=6
3:
写出下列程序的所有输出,并说明数组a1和a2的关系。
publicclassArrays{
publicstaticvoidmain(String[]args){
int[]al={1,2,3,4,5};
for(inti=0;iSystem,out.println("al["+i+"]="+al);
int[]a2;
a2=al;
for(inti=0;ia2++;
**.println("-----afterchangea2------");
for(inti=0;i**.println("al["+i+"]="+al);
**.println("-----afterchangea2[0]------");
a2[0]=333;
System,out.println("a2[0]="+a2[0]);
**.println("al[0]="+a