【编程题目】

今天是国庆上班第一天啦,给大家出个一个好玩儿的题目 : 不使用第三个变量,交换变量a和b的值。

【解答思路】

//加减法
int a=3;
int b=5;
a=a+b;
b=a-b;//b=3
a=a-b;//a=5

//异或法:

可以完成对整型变量的交换,对于浮点型变量它无法完成交换
int a=3;
int b=5;
a=a^b;
b=a^b;
a=a^b;

//乘除法:

可以处理整型和浮点型变量,但在处理浮点型变量时也存在精度损失问题,b必不为0。
int a=3;
int b=5;
a=a*b;
b=a/b;
a=a/b;


一个好奇的人