在不用第三方参数的情况下,交换两个参数的值
2011-08-14 09:03
274 查看
#include <iostream> using namespace std; void main(){ int a=2; int b=3; /* //方法1 a=a+b; b=a-b; a=a-b; */ /* //方法2 a=a^b; b=b^a; a=a^b; */ cout<<"a="<<a<<",b="<<b<<endl; system("pause"); }
第一种方法:
a=a+b; b=a-b; 此时b的值已经赋成a的值了即a,b值相同。
由于 a=a+b; 则此时a的值减去原来a的值,便得到b的值,所以:b=a-b;
第二种方法:
a=a ^ b; b=b ^a; 则 b=b ^ a ^b ; b= b ^ b ^ a; b= 0 ^ a= a;
又 a=a ^ b; a= (a ^ b) ^ (b ^ a ^ b)=a ^ a ^ b ^ b ^ b=0 ^ 0 ^ b =b;
相关文章推荐
- 在不用第三方参数的情况下,交换两个参数的值
- 在不用第三方参数的情况下,交换两个参数的值
- 不用第三方参数,交换两个参数的值
- 只用两个变量,不用第三方变量实现两个变量交换的值
- 不使用第三方变量交换两个参数的值
- 不用第三个变量交换两个参数值得5种方法
- 两个变量交换数字 不用第三个变量的情况下 int a = 5,b = 6
- 不用第三方变量交换两个int类型的值 php
- 不用第3个变量的情况下,交换两个变量的值
- 交换两个数,不用第三方变量(异或运算)
- 不用第三方变量交换两个变量的值
- 在不借助第三方变量情况下实现两个变量的交换(借助于异或运算)
- 不用第三方变量如何交换两个整形数
- 不用第三方参数交换两个数的方法
- 怎样在不使用第三方变量交换函数的两个参数
- PHP中不用第三个变量交换两个变量的值
- 关于交换两个变量的不用第三个变量 异或的问题
- 批处理:不用中间变量,交换两个变量值
- 不用中间变量交换两个整型变量的值
- a、b交换不用参数