不创建临时变量,交换两个数的内容有多种方法实现
1.加法实现
2.乘法实现
只需将上面代码部分改成以下形式
a = a/b;
b = a^b; 111 011
a = a^b; 100 011
4 3
1.加法实现
#include (stdio.h)
int main()
{
int a=3;
int b=4;
a = a+b;
b = a-b;
a = a-b;
printf("%d,%d\n",a,b);
return 0;
}
2.乘法实现
只需将上面代码部分改成以下形式
a = a*b;
b = a/b;a = a/b;
3." ^ " 异或逻辑实现
先将两数转化为二进制,再进行逻辑上的异或关系,如下
3 4
011 100
a = a^b; 111 100b = a^b; 111 011
a = a^b; 100 011
4 3