交换两个数的值,不使用第三个变量
int a = 1,b = 2;
printf("交换前\n");
printf("a = %d,b = %d\n",a,b);
// 用a保存两个数的和
a = a + b;
// 将a的值赋值给b.a的值是两个数的和,b的值仍然是b的值,两个数的和减去b的值得到a的值
b = a - b;
// 将b的值赋值个a.a的值仍然是两个数的和,b的值是最初a的值,两个数的和减去a的值是最初b的值
a = a - b;
printf("交换后\n");
printf("a = %d,b = %d\n",a,b);
第二种方法:
使用异或的方式交换