美文网首页
不借助第三个变量,交换两个变量的值

不借助第三个变量,交换两个变量的值

作者: 7_c5dc | 来源:发表于2018-12-15 12:29 被阅读0次

    示例1:利用加减法的特性

    int a ,b;
    a = a+ b;    //用a保存a,b之和,此时b还是原来的值
    b = a - b;   //a - b就是原来a的值,此时将原来a的值传给b
    a = a - b;   //因为b已经保存了原来a的值,那么 a- b得出的是原来b的值 
    

    示例2:利用异或的特

    int a=10,b=12; 
    // 两次相同的异或等原来的值
    // a^b^b=a;   
    // a^b^a=b
    a=a^b;  //用a保存a,b异域值,此时b还是原来的值
    b=a^b;  //a^b就是原来a的值,此时将原来a的值传给b
    a=a^b;  //因为b已经保存了原来a的值,那么 a^b得出的是原来b的值 
    

    相关文章

      网友评论

          本文标题:不借助第三个变量,交换两个变量的值

          本文链接:https://www.haomeiwen.com/subject/eatahqtx.html