c语言交换两个变量的值

有两个变量a 和b,想要交换它们的值

int a,b;

能不能这样操作呢?

b=a;

a=b;

不能啊,这样操作的意思是把a的值放到b中,然后b中的值已经被覆盖掉了,已经不是b原来的那个值了,所以是没有意义的。

OK,既然不能这样操作,那怎么办? 看一下问题出在哪里,是不是b的值被覆盖掉了,那么可以先把b的值备份一下,这样就可以覆盖了,对不对?

OK,设置一个变量t

先把b中的变量备份到t中

t=b;

然后把a中的变量放到b中

b=a;

然后把备份的b放到a中

a=t;

记录一下这个问题的思考过程。

原文地址:https://www.cnblogs.com/yfish/p/9780706.html