标题:为什么要有中间量
只看楼主
李理
Rank: 1
等 级:新手上路
帖 子:2
专家分:0
注 册:2006-11-3
得分:0 
以下是引用song4在2006-11-1 20:42:57的发言:
在你这个阶段
如果不用t,你怎么来保存x的值进行后面操作呢

我对版主这句话很有意见,什么叫做在你这个阶段???

那请你给出"你这个阶段"比楼主解决两个数交换的更简单的方法!

2006-11-03 15:59
我不是郭靖
Rank: 3Rank: 3
等 级:新手上路
威 望:6
帖 子:494
专家分:6
注 册:2006-10-4
得分:0 
以下是引用半兽人在2006-11-3 15:27:11的发言:
如果不用中间变量,这样行不行?

...
int a,b;
scanf("%d %d",&a,&b);
b=a+b;
a=b-a;
b=b-a;
printf("%d %d",a,b);
...

这个不推荐使用.
因为如果a,b都很大的时候,a+b会产生溢出.产生错误,且不容易发现.

如果实在不想使用中间变量,可以用
a=a^b;
b=a^b;
a=a^b


2006-11-03 16:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-100210-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.297663 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved