题目
已定义int a=7,b=12;在空白处填入变量名,使表达式的值为3:(b%=a)-(_)
已定义int a=7,b=12;在空白处填入变量名,使表达式的值为3:(b%=a)-(_)
题目解答
答案
给定 `int a = 7, b = 12;`,我们可以在 `b %= a` 后减去 `a` 减去 5 的值,使得表达式的值为 3。所以空白处填入 `a-5`,表达式为:`(b %= a) - (a-5)`。
这样,`b %= a` 计算得到的 `b` 现在是 5,然后 `(a-5)` 的值是 2(因为 `a` 是 7)。因此,`5 - 2` 的结果就是 3,满足题目的要求。
综上所述,空白处填入'a-5'。
解析
考查要点:本题主要考查对模运算符(%)和赋值表达式的理解,以及如何通过变量运算构造目标值。
解题核心思路:
- 先计算
b %= a的值:这一步会先计算b % a,并将结果赋值给b,同时表达式本身的值就是这个结果。 - 构造差值为3:通过分析
b的新值,找到与空白处表达式的关系,使两者的差等于3。
破题关键点:
- 明确
b %= a的运算结果:12 % 7 = 5,此时b被更新为5。 - 逆向推导空白处的值:已知
5 - 空白处的值 = 3,因此空白处的值应为2,再结合变量a和b的当前值构造表达式。
-
计算
b %= a的值
b的初始值为12,a为7。
b %= a等价于b = b % a,计算得12 % 7 = 5,此时b被更新为5,表达式本身的值也是5。 -
构造空白处的表达式
整个表达式为(b %= a) - (空白处),已知结果为3,因此:
$5 - \text{空白处的值} = 3 \implies \text{空白处的值} = 2$
需要利用当前的变量值(a=7,b=5)构造值为2的表达式。
关键思路:a - 5 = 7 - 5 = 2,符合要求。