简介
变量交换的这种方法它在编程中经常用到,是我们编程要掌握的基础之一。相当于我们现在有一瓶白醋和一瓶白酒,这时候出来了一个酒鬼,我们准备捉弄他一下,把酒瓶里面的酒换成醋,醋瓶的醋换成酒(也就是把两个瓶子里装的东西对调),那么我们该如何实现呢,想必大家都能想到——找一个空瓶子过来,先把酒倒进空瓶子里面,然后再把醋倒进酒瓶子里面,最后再把空瓶子的酒倒进醋瓶子里面去。
代码展示
基础版1
#include <stdio.h>
int main() {
int a = 0, b = 0;
scanf("%d%d", &a, &b);
printf("%d %d", b, a);
return 0;
}
基础版2(相当于上文中的简介)
#include <stdio.h>
int main() {
int t = 0, a = 0, b = 0;
scanf("%d%d", &a, &b);
t = a;
a = b;
b = t;
printf("%d %d", a, b);
return 0;
}
计算版
#include <stdio.h>
int main() {
int t = 0, a = 0, b = 0;
scanf("%d%d", &a, &b);
a = a + b;
b = a - b;
a = a - b;
printf("%d %d", a, b);
return 0;
}
位操作符(异或版)
异或:是在二进制中运行的。
a^a=0 0^a=a
0 0 1 1
0 1 0 1
=0 1 1 0
#include <stdio.h>
int main() {
int t = 0, a = 0, b = 0;
scanf("%d%d", &a, &b);
a = a ^ b;
b = a ^ b;
a = a ^ b;
printf("%d %d", a, b);
return 0;
}