📜  交换两个数字的C++程序

📅  最后修改于: 2020-09-25 06:41:04             🧑  作者: Mango

此示例包含两种不同的技术,可以在C编程中交换数字。第一个程序使用临时变量交换数字,而第二个程序不使用临时变量。

示例1:交换编号(使用临时变量)

#include 
using namespace std;

int main()
{
    int a = 5, b = 10, temp;

    cout << "Before swapping." << endl;
    cout << "a = " << a << ", b = " << b << endl;

    temp = a;
    a = b;
    b = temp;

    cout << "\nAfter swapping." << endl;
    cout << "a = " << a << ", b = " << b << endl;

    return 0;
}

输出

Before swapping.
a = 5, b = 10

After swapping.
a = 10, b = 5

为了在上面的示例中执行交换,使用了三个变量。

第一个变量的内容被复制到temp变量中。然后,将第二个变量的内容复制到第一个变量。

最后,将temp变量的内容复制回第二个变量,从而完成交换过程。

您还可以仅使用两个变量来执行交换,如下所示。

示例2:不使用临时变量的交换数

#include 
using namespace std;

int main()
{
    
    int a = 5, b = 10;

    cout << "Before swapping." << endl;
    cout << "a = " << a << ", b = " << b << endl;

    a = a + b;
    b = a - b;
    a = a - b;

    cout << "\nAfter swapping." << endl;
    cout << "a = " << a << ", b = " << b << endl;

    return 0;
}

该程序的输出与上面的第一个程序相同。

让我们看看该程序如何工作:

因此,数字已交换。

注意:我们可以使用乘法和除法来代替加法和减法。这也给出相同的输出。

int a = 5, b = 10;

// using multiplication and division for swapping
a = a * b;
b = a / b;
a = a / b;