- C++趣味编程及算法入门
- 王桂平 周祖松 穆云波 葛昌威编著
- 475字
- 2025-03-27 18:31:33
3.4 案例3:交换两个变量的值(1)
【题目背景】
有2个杯子,红色杯子里装了可乐,黄色杯子里装了果汁,怎么交换两个杯子里的饮料呢?允许使用一个空杯子。
在程序中经常需要交换两个变量u和v的值。可以采用的一种方法是通过中间变量t(或称为临时变量,一般用t 、 tmp等变量名),先把u的值暂时保存到t中,然后把v的值赋值给u ,最后把t的值赋值给v。
【题目描述】
交换两个变量u和v的值。
【输入描述】
输入占一行,为两个正整数u和v,用空格隔开,u和v的取值不超过int型范围。
【输出描述】
输出占一行,为交换后u和v的值,用空格隔开。

【分析】
本题需要用三条语句交换u和v的值。代码如下。

【分析】
在上面的程序中,要交换变量u和v的值,因此有赋值语句“u = v;”,把变量v的值赋值给变量u,此时变量u的值已经不是原来的值,而是变量v的值了。因此,在语句(c)执行之前需要先把变量u的值先保存到临时变量t中,然后在语句(d)中把临时变量t的值赋值给变量v。交换u和v值的过程如图3.2所示,图3.2中的(a)、(b)、(c)、(d)分别对应程序中4条语句执行后的效果。

图3.2 交换两个变量的值的过程