#include
void swap_1(int*a,int*b)//方法一,定义临时变量
{
int temp=*a;
*a=*b;
*b=temp;
}
void swap_2(int*a,int*b)//方法二,利用加减法运算
{
*a=*a+*b;
*b=*a-*b;
*a=*a-*b;
}
void swap_3(int*a,int*b)//方法三,利用位运算
{
*a=*a^*b;
*b=*a^*b;
*a=*a^*b;
}
int main()
{
int x,y;
scanf("%d%d",&x,&y);
printf("x=%d,y=%d\n",x,y);
swap_1(&x,&y);//或swap_2(&x,&y);或swap_3(&x,&y);
printf("x=%d,y=%d\n",x,y);
return 0;
}
#include
void f(int *a,int *b) { int c; c=*a;*a=*b;*b=c; }
void main() { int a,b;
a=1; b=2; f(&a,&b); printf("%d %d\n",a,b);
}