原文: https://www.programiz.com/cpp-programming/examples/swapping
此示例包含两种不同的技术,可以在 C 编程中交换数字。 第一个程序使用临时变量交换数字,而第二个程序不使用临时变量。
示例 1:交换数字(使用临时变量)
#include <iostream>
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 <iostream>
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;
}
该程序的输出与上面的第一个程序相同。