<>零、单选

* 若有 a=3,则执行下列语句为a的值为? a+=a*=a;
A. 3
B. 12
C. 9
D. 18
答案:B
解析:参考解析赋值运算从右向左执行,故a=a*a=9,a+=9,a=a+9=3+9=12

* 对于一个三位的正整数n=789,以下结果为8的是?
A. n/10%2
B. (n-n%10)/100
C. n%10
D. n%100/10
答案:D

解析:本题考查运算符的综合运用,/是除法运算符,%是取余运算符,结果是做除法运算后的余数。A选项,n/10=78,78%2=0,n/10%2的结果为:0;B选项,n-n%10=780,(n-n%10)/100的结果为:7;C选项,n%10的结果为:9;D选项,n%100=89,89/10=8,n%100/10的结果为:8。因此,D选项正确。

* 下面的运算符中,用于执行除法运算是哪个?
A. /
B. \
C. %
D. *
答案:A
解析:本题考查运算符,A选项/是用于执行除法运算的,所以A选项正确。B选项不是Java运算符。C选项是求余数的运算符。 D选项是乘法运算符。

* 下面代码的输出结果为? int m=5,n=6; int x=(m+n)+n; int y=(--m)+n; System.out.print("x="
+x+","); System.out.println("y="+y);
A. x=11,y=11
B. x=10,y=11
C. x=10,y=12
D. x=12,y=10

答案:A

解析:本题考查自增自减运算符,A选项是正确的。m++是先参与运算后自加,因此x=(m++)+n=5+6=11;赋值后的m=6,–m先自减后参与运算,因此y=(–m)+n=11,赋值后的m=5.故x=11,y=11。

5.下面程序段的输出结果是:
int a=2; System.out.print(a++); System.out.print(a); System.out.print(++a);
A. 333
B. 334
C. 234
D. 233

答案:C
解析:本题考查自增自减运算符。a++是先参与运算后自加,故第一个输出2,第二个输出3,++a是先自加后参与运算,故第三个输出4。因此,C选项是正确的。

* 设有如下变量,以下哪些语句编译不出错? char c='c'; int i=10; double d=10; long l=1; String s=
"Hello"; int a=2;
A. c=c+i;
B. s+=i;
C. i+=s;
D. c+=s;

答案:B
解析:本题考查+运算符,当字符串与基本数据类型数据进行加法运算时,实际上是进行的字符串连接运算。如:String s=“Hello”+1;
则s的值是"Hello1"。A选项,c为字符型数据,i为int型变量,c+i之后的结果不能赋值给字符型变量;C选项,i+=s;相当于i=i+s;
i为int型变量,s为String型变量,i+s后的结果为String类型,String类型不能赋值给int类型变量;D选项,c+=s; 相当于c=c+s;
c是字符型变量,s为String型变量,c+s之后的结果为String类型,String类型不能赋值给字符型变量;B选项,s+=i; 相当于s=s+i;
i是整型变量,s是字符串型变量,s+i的结果是字符串类型,可以赋值给字符串类型变量。因此B选项是正确的。

技术
©2019-2020 Toolsou All rights reserved,
程序员与架构师华山论道(精华)2020年6月26日 C#类库 GUID帮助类雷军:两年前和卢伟冰喝酒到凌晨三点 钦佩其工作热情和能力Android 11正式版发布!Golang数组平分,数组拆分,数组分组基于RK3399 PWM驱动开发使用mt-range实现一个数字随着滑动杆变化的效果uboot设置nfs参数——linux kernel使用nfs方式加载根文件系统rootfs(六)【答学员问】你们从培训机构毕业后都找到什么工作?ElementUI中获取select 的label值