方式一: 利用第三个变量交换变量的值(适用范围最广).
- # include <stdio.h>
- int main()
- {
- int a, b, t;
- scanf("%d%d", &a, &b);
- t = a;
- a = b;
- b = t;
- printf("%d %d\n", a, b);
- return 0;
- }
复制代码
方式二:直接加减法交换两个变量的值(注意:数值的上溢下益. 且, 只有定义了加减法的数据类型才可以这么做)。
- # include <stdio.h>
- int main()
- {
- int a, b;
- scanf("%d%d", &a, &b);
- a = a + b;
- b = a - b;
- a = a - b;
- printf("%d %d\n", a, b);
- return 0;
- }
复制代码
方式三:利用^(异或运算符)交换两个变量的值.
(此为方式二的变种, 可简写为 a ^= b ^= a ^= b.
整体来看, 三变量是最通用的! 建议多使用)
- # include <stdio.h>
- int main()
- {
- int a, b, t;
- scanf("%d%d", &a, &b);
- a = a^b;
- b = a^b;
- a = a^b;
- printf("%d %d\n", a, b);
- return 0;
- }
复制代码
完。 |
|