GESP 三级 · GESP 202409 C++ 三级 第 7 题

选择题 · 答案 C · 考点:位运算

← 整套速查表 GESP 三级 全部真题

题目

下列代码实现的是( )

void Swap(int &a, int &b) {
    if (a != b) {
        a ^= b;
        b ^= a;
        a ^= b;
    }
}
答案:C

考点

位运算 讲解 →位运算 真题汇总 →

解题思维

看到引用传参和异或连用 → 先想位运算交换技巧

常见错误

易错:误选 A(只看到异或)或 D(混淆高低位),忽略 if 条件导致误判

详细解析(节选)

考点:引用传参|位运算交换|逻辑判断

解析

函数通过引用修改实参,若 a≠b 则执行三步异或交换,最终 a 与 b 互换。

同考点真题

在 OI伴学 里做这道题
登录后可计时作答、查看完整六段式解析,并按你的错题自动生成同类练习。
去刷题先做一次 AI 学情诊断