C++交換變數值


C++程式交換兩個數位不使用第三個變數

交換兩個數位可以不使用第三個變數。有兩種常用的方法來實現交換兩個數位而不使用第三個變數:

  1. 通過使用+-運算子
  2. 通過使用*/運算子

程式1:使用 * 和 / 運算子

下面來看看一個簡單的不使用第三個變數交換兩個數位C++範例。

#include <iostream>  
using namespace std;  
int main()  
{  
    int a=5, b=10;      
    cout<<"Before swap a= "<<a<<" b= "<<b<<endl;      
    a=a*b; //a=50 (5*10)    
    b=a/b; //b=5 (50/10)    
    a=a/b; //a=10 (50/5)    
    cout<<"After swap a= "<<a<<" b= "<<b<<endl;      
    return 0;  
}

執行上面程式碼得到以下結果 -

Before swap a= 5 b= 10     
After swap a= 10 b= 5

程式2:使用 + 和 - 運算子

下面來看看另一個例子,使用+- 交換兩個數位。

#include <iostream>  
using namespace std;  
int main()  
{  
    int a=5, b=10;      
    cout<<"Before swap a= "<<a<<" b= "<<b<<endl;      
    a=a+b; //a=15 (5+10)    
    b=a-b; //b=5 (15-10)    
    a=a-b; //a=10 (15-5)    
    cout<<"After swap a= "<<a<<" b= "<<b<<endl;      
    return 0;  
}

執行上面程式碼得到以下結果 -

Before swap a= 5 b= 10  
After swap a= 10 b= 5