搜索
您的当前位置:首页正文

怎么实现 swap(a, b)?

来源:二三娱乐

1.临时变量 2.加法运算 3.乘法运算 4.异或运算

 #include <stdio.h>
 
int main(int argc, char const *argv[])
{
    int a = 1;
    int b = 2;
    /* 方法1  临时变量*/
    int tmp = a;
    a = b;
    b = tmp;

    /* 方法2  加法运算*/
    a = a + b;
    b = a - b;
    a = a - b;

    /*方法3 乘除运算*/
    a = a * b;
    b = a / b;
    a = a / b;

    /*方法4 异或运算*/
    /*
    异或运算符特点
      0^0 = 0, 
      1^0 = 1, 
      0^1 = 1, 
      1^1 = 0
    */
    
    a = a^b;
    b = a^b;
    a = a^b;

    printf("a = %d b = %d\n",a,b);
    return 0;
}

Top