交换两个变量的值是计算机排序的基础。
交换两个变量的值,需要借助一个中间变量来完成:
int a = 1;
int b = 2;
int t;
分三步完成:
先把a的值保存起来,放到t里
a得到b的值
b得到存在t中的a的值
至此,完成了a, b两个变量值的交换
用计算机实现就是
int a = 1;
int b = 2;
int t = a;
a = b;
b = t;
完整代码如下:
#include <iostream>
using namespace std;
int main()
{
int a = 1;
int b = 2;
cout << "a=" << a << ", b=" << b << endl;
int t = a;
a = b;
b = t;
cout << "a=" << a << ", b=" << b << endl;
return 0;
}
输出:
用函数实现
传递引用类型的参数,函数得到的是被传递的变量本身,从而修改函数参数就等于直接修改被传递的参数。
注意:传递值类型是完成不了交换的,具体参考之前的文章 向函数传递参数(传值、传引用、传const引用)
完整的代码实现:
#include <iostream>
using namespace std;
void Swap(int& i, int& j)//注意这里一定要传递引用,否则传值是不能完成任务的
{
//(1) your code
}
int main()
{
int a = 2;
int b = 3;
cout<<"a="<<a<<", b="<<b<<endl;
Swap(a,b);
cout<<"a="<<a<<", b="<<b<<endl;
return 0;
}
输出:
如需答案和答疑:请私信。