交换两个数值的多种表示方法
(1)创建临时变量
#include<stdio.h>
int main ()
{
int c;
int a=10, b=20;
printf("%d %d\n",a,b);
c=b;
a=b;
b=a;
printf("%d %d\n",a,b);
return 0;
}
(2)利用变量之间的加减
#include<stdio.h>
int main ()
{ int a=10, b=20;
printf("%d %d\n",a,b);
a=a+b;
b=a-b;
a=a-b;
printf("%d %d\n",a,b)
return 0;
}
弊端:当 a, b,数值过大时,则(a+b)的和会出现溢出现象,导致数据无法输出。
(3)利用异或解决
#include<stdio.h>
int main ()
{
int a=10, b=20;
printf("%d %d\n",a,b);
a=a^b;
b=a^b;
a=a^b;
printf("%d %d\n",a,b);
return 0;
}