就我个人了解,两个数交换三种方法:
第一种:定义一个中间变量,如:
int num1,num2,temp;
temp=num1;num1=num2;num2=temp;
第二种:两个数相加,如
int a, b;
a=a+b;b=a-b;a=a-b;
第三种:按位异或,如
int a,b,c;
a=a^b; c=a;b=a^b;a=b^c;
例子如下:
#include<iostream>
using namespace std;
int change(int a,int b)
{
int c=0;
a=a^b; c=a;b=a^b;a=b^c;
cout << "change after: "<<endl;
cout << "a=" << a << "\t" << "b=" << b << endl;
return 0;
}
int main()
{
int a,b;
cout << "please enter two number:" <<endl;
cin >> a >> b ;
cout << "a=" << a << "\t" << "b=" << b <<endl;
change(a,b);
return 0;
}
执行结果如下: