首页 > 试题广场 >

若有定义int x=3,y=2和float a=2.5,b=

[单选题]
若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是()
  • 0
  • 2
  • 1.5
  • 1
答案选D:
int x=3,y=2,float a=2.5,b=3.5,(x+y)%2+(int)a/(int)b=
取模运算(取余数):(x+y)%2=5%2=1                      (%取模运算  取"余数部分",忽略整数)
除法运算(取商):(int)a/(int)b=(int)2.5/3.5=0(int型除法运算取"整数部分",忽略余数)
(x+y) % 2 + (int) a / (int) b = 5 % 2 + (int) 2.5 / (int) 3.5 = 1 + 0 = 1
编辑于 2022-02-26 14:45:47 回复(0)
<p>5%2得出余1,而a和b被强制转换成整型,得出0,所以结果为1</p>
发表于 2020-09-08 11:02:29 回复(0)
(x+y)%2+(int)a/(int)b
等于:
(2+3)%2+2/3
等于
5%2+2/3
等于
1+2/3
等于
1+0
等于
1
发表于 2021-07-26 06:50:54 回复(0)
(x+y)%2+(int)a/(int)b 等于: (2+3)%2+2/3 等于 5%2+2/3 等于 1+2/3 等于 1+0 等于 1
发表于 2021-11-22 09:38:52 回复(0)
好吧,把%看成/了~←_←
发表于 2021-06-19 08:56:31 回复(3)
5%2=1这是求余数 2/3=0,因为都是整形
发表于 2021-02-24 21:29:47 回复(0)