要實現兩個數字的交換,你還是隻抓著那一種方法不放嗎?
阿新 • • 發佈:2019-02-09
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;
}