两个数交换的三种方法

比如 a=3;b=8;

用三种方法来交换两个数的值?

第一种      定义一个临时比变量存储 :

                   int temp = a;   

                 a = b;

               b = temp;

第二种    用他们的和互减:                

                 a =  a + b;   //  a =11;

                b =  a -  b;   //  b = 11 - 8

                a =  a - b ;   //  a = 11 - b  

第三种    用异或 ,原理:异或同一个值两次,本身不变         

                a = a ^ b ;
                b = a ^ b ;  // (a ^ b) ^ b = a;
                a = a ^ b;  //  (a ^ b) ^ a = b;

      


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章