题目
8. (2.0分) 已知int i=11,j=4;, 则执行i%=j+1;后,i 的值是____。A. 4B. 3C. 1D. 2
8. (2.0分) 已知int i=11,j=4;, 则执行i%=j+1;后,i 的值是____。
A. 4
B. 3
C. 1
D. 2
题目解答
答案
C. 1
解析
考查要点:本题主要考查运算符优先级和取模运算的理解与应用。
解题核心:明确%=运算符的展开形式,并正确处理运算顺序。
关键点:
- 运算符优先级:
+的优先级高于%,因此j+1会先计算。 - 取模运算规则:
a % b的结果是a除以b的余数,符号与a一致。
表达式展开
i %= j + 1; 等价于 i = i % (j + 1);。
计算步骤
- 计算
j + 1:
$j + 1 = 4 + 1 = 5$ - 计算
i % 5:
$11 \div 5 = 2 \text{ 余 } 1 \quad \Rightarrow \quad 11 \% 5 = 1$ - 赋值给
i:
$i = 1$
易错点
若错误认为先计算i % j(即11 % 4 = 3),再加1,会得到错误答案4(选项A)。需注意运算符优先级。