1. 程式人生 > >要實現兩個數字的交換,你還是隻抓著那一種方法不放嗎?

要實現兩個數字的交換,你還是隻抓著那一種方法不放嗎?

2017年7月22號       星期六     天晴    

//題目:給定兩個整形變數值,將兩個值的內容交換

//[1]:建立中間變數      適用於程式設計水平較低 者      難度係數一顆星

#include<stdio.h>
int main()
{
   int x=5,y=10,z=0;      //X,Y,的值為待交換數字,本文以X=5,Y=10為例 
z=x;
x=y;
y=z;
printf("x=%d   y=%d\n",x,y);
return 0;
}
//不新增中間變數    適用於程式設計水平中等者      難度係數三顆星
#include<stdio.h>


#include<stdio.h>


int main()
{
int x=5,y=10;
x=x+y;
y=x-y;
x=x-y;
printf("x=%d   y=%d",x,y);
return 0;
}
//不新增中間變數    適用於程式設計水平較高者      難度係數五顆星
#include<stdio.h>
#include<stdio.h>


int main()
{
int x=5,y=10;
x=x^y;
y=x^y;                   //注意:在這裡,^為異或,而不是次方
x=x^y;
printf("x=%d   y=%d",x,y);
return 0;
}