#include <stdio.h>
//法一 建立临时变量
void f1(int *x,int *y)
{
int temp;
temp=*x;
*x=*y;
*y=temp;
}
//法二 不建立临时变量
void f2(int *x,int *y)
{
*x=*x^*y;
*y=*x^*y;
*x=*x^*y;
}
//法三 不建立临时变量
void f3(int *x,int *y)
{
*x=*x+*y;
*y=*x-*y;
*x=*x-*y;
}
void main()
{
int a=11,b=22;
printf("a=%d b=%d\n",a,b);
f1(&a,&b); printf("第一次交换:a=%d b=%d\n",a,b);
f2(&a,&b); printf("第二次交换:a=%d b=%d\n",a,b);
f3(&a,&b); printf("第三次交换:a=%d b=%d\n",a,b);
}