1. 程式人生 > >不用中間變數交換兩個數

不用中間變數交換兩個數

要求:不用第三變數將a和b兩個值交換。

方法:用 ^ 異或解決,同桌是這樣解決的,很聰明。

#include<stdio.h>
int main()
{
int a=13,b=31;
printf(“交換前:a=%d b=%d \n”,a,b);
b=a^b;//得出中間值
a=a^b;//a裡存的是b值
b=a^b;//b裡存的是a值
printf(“交換後:a=%d b=%d\n”,a,b);
return 0;
}