B.((x<100)&&(x>1))||(x<0)
C.((x<100)&&(x>1))&&(x<0)
D.(1>x>100)||(x<0)
32、x=10并且y=10,当执行完语句(y>10)&(x++>10)后,x的值为(C)
A.9
B.10
C.11
D.8
33、x=10并且y=10,当执行完语句(y>10)&&(x++>10)后,x的值为(B)
A.9
B.10
C.11
D.8
34、x=10并且y=10,当执行完语句(y>=10)|(x++>10)后,x的值为(C)
A.9
B.10
C.11
D.8
35、x=10并且y=10,当执行完语句(y>=10)||(x++>10)后,x的值为(B)
A.9
B.10
C.11
D.8
36、运算符+,*,&&,||,&从高到底的优先级排列(C)
A.&&,||,&,*,+
B.*,+,&&,||,&
C.*,+,&,&&,||
D.*,+,&,||,&&
37、下面哪个运算符是右结合的(D)
A.*
B.+
c.=
D.&&
38、语句1+2+3+(4+5)+6*7,哪个最先得到运算(A)
A.4+5
B.6*7
C.1+2
D.2+3
39、根据Java的运算符优先级,语句3+4+4*5中的哪个运算符最先执行(C)
A.thefirst+.
B.thesecond+.
C.the*.
D.Itcouldbeeitherthefirst+orthe*.
40、语句System.out.println("Java"+1+2+3);的输出结果是(A)
A.Java123
B.Java6
C.Java15
D.Java33
41、字符A的统一码是65,表达式"A"+1的值是多少(C)
A.66
B.B
C.A1
D.Illegalexpression
42、字符A的统一码是65,表达式'A'+1的值是多少(B)
A.66
B.B
C.A1
D.Illegalexpression
43、下面哪个方法是将字符串s转换为int型(B)
A.integer.parseInt(s);
B.Integer.parseInt(s);
C.integer.parseInteger(s);
D.Integer.parseInteger(s);
44、下面哪个方法是将字符串s转换为double型(A)
A.double.parseDouble(s);
B.Double.parsedouble(s);
C.double.parseDouble(s);
D.Double.parseDouble(s);
45、分析下面代码,正确的是(C)
importjavax.swing.*;
publicclassShowErrors{
publicstaticvoidmain(String[]args){
inti;
intj;
Strings=JOptionPane.showInputDialog(null,
"Enteraninteger","Input",
JOptionPane.QUESTION_MESSAGE);
j=Integer.parseInt(s);
if(j>3)i=(i+4);
}
}
A.Theprogramcannotcompilebecausejisnotinitialized.
B.Theprogramcannotcompilebecauseidoesnothaveaninitialvaluewhenitisusedini=i+4;
C.Theprogramcompilesbuthasaruntimeerrorbecauseideosnothaveaninitialvaluewhenitisusedini=i+4;
D.Theprogramcompilesandrunsfine.
46、下面语句哪个是返回a的b次幂ab(C)
A.Math.power(a,b)
B.Math.exponent(a,b)
C.Math.pow(a,b)
D.Math.pow(b,a)
47、表达式(int)(76.*100)/100的值为(A)
A.76.02
B.76
C.76.
D.76.03
48、语句System.currentTimeMills()返回的是(D)
A.当前时间
B.当前时间的毫秒数
C.从凌晨到当前的毫秒数
D.从1970年1月1日0点到现在的毫秒数
49、语句System.out.printf("%10s",)(用*代替空格)输出的结果是(D)
A.****
B.23456*****
C.****
D.****
50、语句System.out.printf("%3.1e",1234.56)的输出结果是(C)
A.0.1e+04
B.0.e+04
C.0.123e+04
D.1.2e+03
二、填空题(每空2分,共20分)
1.只要与变量适合,数值就可以赋给整型变量,如果字面量太大超出变量的存储范围,就会出现溢出。
2.浮点型直接量默认为是double型的。
3.在赋值语句中,左边变量的数据类型必须与右边值的相匹配。
4.charch=‘a’;
System.out.println(++ch);
该语句所显示的结果为b。
5.当一个整数被转换成一个char型数据时,只只用整数的低十六位,其余部分被闲置。
6.3+4*4>5*(4+3)–1的值为false。
7.要把字符串转换为int型的值,使用Integer类中的parseInt()方法。
8.把double数转换为int型数时可能数据丢失。
9.println方法显示完字符串后光标向下一行,而print方法则在完成后向后一格。
10.阅读下面程序
publicclassTest{
publicstaticvoidmain(String[]args){
charx=‘a’;
chary=‘c’;
System.out.println(++y);
System.out.println(y++);
System.out.println(x>y);
System.out.println(x-y);
}
}
其运算结果依次是:
d、d、false和-3。
11.程序错误可以分为:
运行时错误、逻辑错误和编译错误。
12.Java提供了表示int、boolean、float,double和char的数据类型,它们称为基本数据类型。
13.final是Java的关键字,表示常量不会改变。
14.System.out.printf(“amountis%f%e\n”,32.32,32.32);
该语句的输出是32.3.232e+01
15.假设X为1,执行下述表达式之后X的值是1
(X>1)&&(X++>1)
16.除了赋值运算符,所有的双目预算符都是左结合,而赋值运算符是右结合。
17.缩进用于描述选择,循环结构关系。
18.使用括号既提高可读性,也可以避免产生错误。
19.可以使用JOptionPane类中的showInputDialog()方法,在运行时获取输入。
20.阅读下面程序
inti=0;
i=(i=1)+i;
Syetem.out.println(i);
上面代码输出的结果是:
2
三、判断题(判断以下论述的正误,认为正确的就在答题相应位置划“T”,错误的划“F”,每小题1分,共10分)
1.表达式var++使变量的值增加1,并且该表达式的值取var增加以后的新值。
(F)
2.当两个类型不同的运算对象进行一元运算时,如果运算对象之一是double就将另一个自动转换为double型。
(T)
3.该表达式true|true&&false的值为true。
(T)
4.在java中使用除法时,两个整数相除商可以为浮点型。
(T)
5.常量必须在使用前说明和初始化。
(T)
6.任何表达式都可以当作语句。
(F)
7.表达式X++可以当作语句。
(T)
8.语句X=X+5也是表达式。
(T)
9.语句X=Y=X=0是非法语句。
(F)
10.具有相同优先级的运算符都是从左向右计算的。
(F)
四、简答题(回答要点,并简明扼要作解释,每小题6分,共30分)
1.描述编译错误、运行时错误和逻辑错误。
编译错误:
在代码编译阶段发生的错误,一般由语法错误引起
运行时错误:
则在程序接收到非法数据时导致程序无法运行下去时所发生的错误
逻辑错误:
则是程序员在写代码时算法不正确所引起的错误
2.简述命名标识符的规则。
不与java的关键字和保留字重名,不以下划线,数字开头
3.表达式的计算规则是什么?
按照运算符优先级高低,运算符优先级高优先运算
4.要表示一个字符构成的串,使用什么类型?
该类型不是基本类型,称为什么类型?
使用showInputDialog方法获取输入字符串,其中各个参数表示什么?
String,String对象,showInputDialog(null,text(字符串文本),title(标题文本),value(显示对话框的图标)),
5.什么是缩进?
缩进的好处是什么?
同一代码段的代码,向右空一个tab,向左对齐,增加代码可读性,
6.什么是块?
简述块的两种对齐方式。
对变量对象进行初始化的程序段,向左对齐
7.调试工具可以跟踪程序的执行,由于系统的不同而有所不同,它们共同的特点是什么?
可以步进执行
8.写出与运算符(&&)以及非运算符(!
)的真值表。
A&&B
ABA&&B
111
100
010
000
!
A
A!
A
11
20
9.简述计算p1&&p2和p1||p2的规则。
P1=false时p2不执行
P1=true,p2不执行
10.写出下列语句的输出:
a)System.out.printf("amountis%f%e\n”,32.32,32.32);
amountis32.3.323e+01
b)System.out.printf("amountis%5.4f%5.4e\n”,32.32,32.32);
amountis32.32003.2320e+01
c)System.out.printf("%6b\n”,(1>2));
false
d)System.out.printf("%6s\n”,“Java”);
Java
11.输出布尔型值、字符、十进制整数、浮点数和字符串的格式描述符是什么?
%b,%c,%d,%f,%c
12.分别找出byte、short、int、long、float和double中的最大和最小数,其中哪个数据类型要求的存储空间最小。
Byte类型最小
13.试列举出Java中变量、常量、方法和类的命名习惯。
类名采用Pascal命名法,其中接口名以I开头,变量,方法采用Camel命名法,常量全部大写
14.如何把一个数字字符串转换为double型值?
如何把一个整数字符串转换为int型值?
采用Double类里的parseDouble()方法转换,采用Integer类里的parseInt()方法
15.如何标记注释行和注释段?
文档注释用///
///
注释行//
注释段/**/
16.使用常量的好处是什么?
保证不变动的数值安全
17.如果强制从double型转换为int型时,double型值的小数部分是如何处理的?
类型转换是否是改变被转换变量的值?
舍去,改变
18.不同的数值类型值能在一起计算吗?
为什么?
只要能进行隐式转换,就能进行计算
19.列出布尔运算符的优先级,计算下列表达式。
True|true&&false|>&&false
True||true&&false&&>||true
True|true&false&>|true
20.找出并改正下列代码的错误:
1publicclassTest{
2publicvoidmain(string[]args){
3inti;//line3:
inti=0;
4intk=100.0;
5intj=i+1;
6
7System.out.println(“jis“+j+“and
8kis“+k);
9}
10}
五、程序设计题(每小题10分,共30分)
1.编写程序,从输入对话框读入double型的华氏温度,将其转换为摄氏度并在消息对话框中显示结果。
转化公式如下:
摄氏度=(5/9)*(华氏度-32)
importjavax.swing.*;
publicstaticclassTemperture
{
publicstaticvoidmain(String[]args)
{
doublefahrenheit=0;
doublecelsius=0;
huashi=Double.parseDouble(JOptionPane.showInputDialog("PleaseinputtheFahrenheitTemperture"));
celsius=(5/9.0)*(fahrenheit-32);
JOptionPane.showMessageDialog(null,"Celsiustemperture"+celsius);
}
}
2.编写程序读入半径和高,用下列公式计算圆柱和体积:
面积=半径*半径*π,
体积=面积*高。
importjavax.swing.*;
publicclassVolume{
publicstaticvoidmain(String[]args){
double