//交换两个变量的值,不使用第三个变量。
//有两种解法, 一种用算术算法, 一种用^(异或)
//异或:相同为0,不同为1。相当于减法。
#include <stdio.h>
int main()
{
int a = 8;
int b = 9;
printf("初始状态:a = %d, b = %d\n",a,b);
a = a + b;
b = a - b;
a = a - b;
printf("算数交换:a = %d, b = %d\n",a,b);
a = a ^ b;
b = a ^ b;
a = a ^ b;
printf("异或交换:a = %d, b = %d\n",a,b);
return 0;
}