题目
已知x=8,语句x+=x/2执行后x的值是:()。A. 16B. 10C. 8.0D. 12.0
已知x=8,语句x+=x/2执行后x的值是:()。
A. 16
B. 10
C. 8.0
D. 12.0
题目解答
答案
本题考察了赋值运算符和算术运算符的混合使用,给定的语句是x+=x/2,x=8。该语句表示将x的值除以2,再加上原来的值,并将结果赋给x。因为x是一个整数类型的变量,所以在进行除法运算时会向下取整,即x/2的结果为4。因此,x+=x/2的结果为8+4=12。
因此,本题的答案是D,即12.0。
解析
考查要点:本题主要考查赋值运算符与算术运算符的结合使用,以及运算符优先级的理解。关键在于明确x += x/2
的执行顺序,即先进行除法运算,再进行加法运算,最后赋值。
解题核心思路:
- 运算符优先级:除法运算符
/
的优先级高于赋值运算符+=
,因此先计算x/2
,再将结果与原x
相加。 - 数据类型转换:若
x
为整数,除法运算可能返回浮点数结果(如Python),导致最终结果为浮点数。
破题关键点:
- 分解语句:将
x += x/2
拆解为x = x + (x/2)
,明确每一步的计算顺序。 - 注意结果类型:根据题目选项中的浮点数形式(如
12.0
),判断最终结果是否包含小数部分。
步骤1:初始值代入
已知x = 8
,代入语句x += x/2
。
步骤2:计算除法部分
根据运算符优先级,先计算x/2
:
$x/2 = 8/2 = 4.0$
(注意:若x
为整数,某些编程语言中8/2
可能返回整数4
,但题目选项包含浮点数形式,因此假设结果为4.0
。)
步骤3:执行加法运算
将原x
值与除法结果相加:
$x + (x/2) = 8 + 4.0 = 12.0$
步骤4:赋值给x
最终将结果12.0
赋值给x
,因此x
的值为12.0
。