1.最常见的方法是借助第三个变量,这个也方便,也不损耗太多资源! $a = 10; $b = 20; $temp = $a; $a = $b;//20 $b = $temp;//10 2.使用数学的计算,通常是记录两个数之间的距离就行了 $a = 10; $b = 20; $a = $a - $b; //-10 $b = $a + $b; //-10 + 20 = 10 $a = $b - $a; //10 - (-10) = 20 3.使用异或按位运算,定理:a = 1100, b = 1010, a^b^b = a $a = 12; //二进制 1100 $b = 10; //二进制 1010 $a = $a ^ $b; //糅合了$a和$b的值到二进制 0110 = 5 $b = $a ^ $b; //二进制 1100 = 12 $a = $a ^ $b; //二进制 1010 = 10 4.不知道怎么做,感觉没什么用吧,直接上代码吧! /*********C语言版*************/ int a = 10; //一个存储单元存储着值 10,指针ap和a关联在一起 int b = 20; //一个存储单元存储着值 20,指针bp和b关联在一起 //接下来就是将 a => bp, b => ap ,这样子就能交换值了,不知道C语言应该怎么实现^_^