选择题 · 答案 C · 考点:位运算
如果 a 为 int 类型的变量,下列哪个表达式可以正确求出满足 “大于等于 a 且是 4 的倍数” 的整数中最小的?( )
看到‘≥a的最小4倍数’→先想位运算‘先减后或再+1’构造法。
易忽略‘大于等于’方向,误选清零末尾两位的位运算(那是≤a的最大倍数);看到复杂表达式不敢选。
考点:位运算构造法|整除性质
本题核心是求大于等于a的最小4的倍数。4的倍数二进制末尾必为00。若用位运算构造,需先减1再按或3(强制末尾变011),最后加1恢复00,确保结果≥a。
00
3
011