1、第二章下列哪个是合法的标识符:( )。A、a=bB、_HelloC、2ndD、Chong qing 答:B下列哪些是合法的标识符()。 A、newB、classC、intD、const2 答:D如果定义有变量double d1, d2=4.0则下列说法正确的是:A、变量d1,d2均初始化为4.0B、变量d1没有初始化,d2初始化为4.0C、变量d1,d2均未初始化D、变量d2没有初始化,d1初始化为4.0答:B判断题:所有的变量在使用前都必须进行初始化。( ) 答:正确。下列哪些是不能通过编译的语句:( ) A、int i = 32;B、float f = 45.0;C、double d =
2、45.0;D、char a=c;答: B如果定义有double x;float y;int m,则表达式x*y-m的类型为( ):A、doubleB、floatC、intD、short答:A如果定义有short s;byte b;char c,则表达式s*b+c的类型为( ):A、charB、shortC、intD、byte答:C已知int i= 2147483647; +i; 则i的值等于多少( ) A -2147483648 B 2147483647 C 2147483648答:A已知byte i= 127; +i; 则i的值等于多少( ) A -128 B 127 C 128答:A已知b
3、yte i= 127; i=i+1;这两行语句能否编译成功?( ) 答:编译不成功。执行以下程序段int a=5,b; b=+a*3后b的值为:( )A、17B、18C、16D、15答: B第二章下列选项中,( B )不属于Java语言的基本数据类型?(A)整数型(B)数组(C)浮点型(D)字符型【解析】根据Java语言的基本数据类型包含的类别选取。下列关于基本数据类型的说法中,不正确的一项是( D )。(A)boolean类型变量的值只能取真或假(B)float是带符号的32位浮点数(C)double是带符号的64位浮点数(D)char是8位Unicode字符【解析】Java中的字符采用的是
4、16位的Unicode字符。下列关于基本数据类型的取值范围的描述中,正确的一个是( B )。(A)byte类型的取值范围是-128128 (B)boolean类型的取值范围是真或假(C)char类型的取值范围是065536 (D)short类型的取值范围是-3276732767【解析】根据每种类型占几个字节即可推算出其取值范围,如byte类型占1个字节,即共包含28个数值,其取值范围范围应为-128127,其他类型也是如此。下列Java语句中,不正确的一项是( C )。(A)$e, a, b = 10; (B)char c, d = a;(C)float e = 0.0d; (D)double
5、 c = 0.0f;【解析】不能将double类型的常量赋值给float类型的变量。下列语句中不正确的一个是( B )。(A)float f = 1.1f; (B)byte b = 128;(C)double d = 1.1/0.0;(D)char c = (char)1.1f;【解析】bytel类型变量的取值范围是-128127。下列表达式1+2+ aa+3的值是( B )。(A)12aa3(B)3aa3 (C)12aa(D)aa3【解析】整数和整数相加得到两个整数的和,而整数和字符串相加得到的是字符串。12已知y=2, z=3, n=4,则经过n=n+ -y*z/n运算后n的值为( A )
6、。(A)3(B)-1(C)-12(D)-3【解析】根据运算符的优先级,该表达式相当于n=n+ (-y)*z)/n。13已知a=2, b=3,则表达式a%b*4%b的值为( A )。(A)2(B)1(C)-1(D)-2【解析】根据运算符的优先级,该表达式相当于(a%b)*4)%b。已知x=2, y=3, z=4,则经过z- = -y x-运算后,z的值为( D )。(A)1(B)2(C)3(D)4【解析】在表达式运算过程中,-y的值变为2,x的值还是2,等号右侧运算后的值为0,因此z的值没有变化。15表达式(12=0) & (1/0 1)的值为( B )。(A)true(B)false(C)0(
7、D)运行时抛出异常【解析】由于(12=0)的值为false,因此整个表达式发生短路运算,即(1/0 1)就没有参与运算,整个表达式的值为false。16设有类型定义short i=32; long j=64; 下面赋值语句中不正确的一个是( B )(A)j=i;(B)i=j;(C)i=(short)j;(D)j=(long)i;【解析】long类型的数据不能自动转变为short类型,因此不能将long类型的变量直接赋值给short类型。17现有1个char类型的变量c1=66和1个整型变量i=2,当执行c1=c1+(char)i;语句后,c1的值为( D )。(A)d(B)D(C)68(D)语
8、句在编译时出错表达式9*4/ -5%5的值为 -2 。(十进制表示)若a、b为int型变量,并且已分别赋值为5和10,则表达式(a+)+(+b)+a*b的值为 82 。假设i=10, j=20, k=30,则表达式 !(ij+k) | !(i+10=j) 的值为 false 。第三章下列( D )不属于Java语言流程控制结构?(A)分支语句(B)跳转语句(C)循环语句(D)赋值语句【解析】Java语言流程控制结构只包括分支、循环和跳转三种语句。下列说法中,不正确的一个是( C )。(A)switch语句的功能可以由ifelse if语句来实现(B)若用于比较的数据类型为double型,则不可
9、以用switch语句来实现(C)if else if语句的执行效率总是比switch语句高(D)case子句中可以有多个语句,并且不需要大括号括起来【解析】语句的执行效率高低要根据具体语句来确定,不能简单地说if else if语句的执行效率总是比switch语句高。设a、b为long型变量,x、y为float型变量,ch为char类型变量且它们均已被赋值,则下列语句中正确的是( B )。(A)switch(x+y) (B)switch(ch+1) (C)switch ch (D)switch(a+b); 【解析】switch后面的表达式必须放在括号()中,且表达式的类型只能是byte、sho
10、rt、int和char类型,不能是其他类型。下列循环体执行的次数是( C )。int y=2, x=4;while(-x != x/y) (A)1(B)2(C)3(D)4【解析】第1次执行while时,-x的值为3,3/2=1,满足等号两端值不等的条件,执行一次循环体;第2次执行while时,-x的值为2,2/2=1,条件满足,又执行一次循环体;第3次执行while时,-x的值为1,1/2=0,条件满足,再次执行一次循环体;第4次执行while时,-x的值为0,0/2=0,条件不满足满足,结束循环。因此在这个循环语句执行的过程中,循环体共执行了3次。下列循环体执行的次数是( B )。int x
11、=10, y=30;doy -= x; x+;while(x+y-);(A)1(B)2(C)3(D)4【解析】执行1次循环体后,y的值为20,x值为11,然后执行while,此时x+的值为11,y的值为20,因此x+y条件满足,判断完后,x的值变为12,y的值变为19;接着执行第2次循环体,执行完第2次循环体后,y的值为9,x值为13,然后执行while,此时x+的值为13,y的值为9,因此x+y条件不满足,结束循环。因此在这个循环语句执行的过程中,循环体共执行了2次。已知如下代码:switch(m)case 0: System.out.println(Condition 0);case 1:
12、 System.out.println(Condition 1);case 2: System.out.println(Condition 2);case 3: System.out.println(Condition 3);break;default:System.out.println(Other Condition);当m的值为( D )时,输出“Condition 3”(A)2(B)0、1(C)0、1、2(D)0、1、2、3【解析】当m的值为0、1、2、3时,都能输出“Condition 3”,因为case 0、case 1、case 2后面的语句都没有break,因此可以继续向后执行。每一个else子句都必须和它前面的一个距离它最近的 if 子句相对应。在switch语句中,完成一个case语句块后,若没有通过break语句跳出switch语句,则会继续执行后面的 case 语句块。在for循环语句中可以声明变量,其作用域是 for循环体
侵权处理QQ:3464097650--上传资料QQ:3464097650
【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。