#include
int main(void)
{
int *a1,*b1,*c1,a,b,c;
a1=&a;
b1=&b;
c1=&c;
scanf("%d%d%d",a1,b1,c1);
if(*a1>*b1)
{
*a1=*a1^*b1;
*b1=*a1^*b1;
*a1=*a1^*b1;
}
if(*a1>*c1)
{
*a1=*a1^*c1;
*c1=*a1^*c1;
*a1=*a1^*c1;
}
if(*b1>*c1)
{
*b1=*b1^*c1;
*c1=*b1^*c1;
*b1=*b1^*c1;
}
printf("%d,%d,%d",*a1,*b1,*c1);
}
比如a=1,b=2
那按位表示a最低4位是: 0001
b最低4位是:0010
a1=a1^*b1; //0001^0010=0011; a1=0011
b1=a1^*b1; //0011^0010; b1=0001;
a1=a1^*b1; //0011^0001=0010; a1=0010
交换了一下a1和b1