标题:请问各位高手!交换两个变量的值(不用中间变量)怎么实现
只看楼主
wuelite
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2004-12-18
 问题点数:0 回复次数:8 
请问各位高手!交换两个变量的值(不用中间变量)怎么实现

有两个变量P 和M 要交换两个变量的值,要求不能用中间变量

编写一个程序段

麻烦各位大侠了

搜索更多相关主题的帖子: 变量 
2004-12-18 11:45
joebing
Rank: 1
等 级:新手上路
帖 子:4
专家分:0
注 册:2004-12-18
得分:0 

不用中间变量可以吗?我关注一下哪位高手

2004-12-18 11:52
DavidZhang
Rank: 1
等 级:新手上路
帖 子:11
专家分:0
注 册:2004-12-10
得分:0 

用指针喽


穷也要站在地主堆里 ! 不懂也要站在高手堆里 !
2004-12-18 13:33
lpanguan
Rank: 1
等 级:新手上路
帖 子:21
专家分:0
注 册:2004-12-20
得分:0 

以前在哪见过。

1

int a,b;

a=a+b; //此时a为a与b之和 b=a-b; //此时b=a a=a-b; //此时a=b

2

a^=b^=a^=b; 详见http://search.csdn.net/Expert/topic/777/777846.xml?temp=.8238947


2004-12-20 03:19
我想要飞
Rank: 1
等 级:新手上路
帖 子:121
专家分:0
注 册:2004-6-15
得分:0 

a=a^b;

b=a^b;

a=a^b;


个人宣言;黑暗的腹地,我睁开双眼, 世界哑口无言。。。
2004-12-20 21:54
wuelite
Rank: 1
等 级:新手上路
帖 子:5
专家分:0
注 册:2004-12-18
得分:0 
以下是引用lpanguan在2004-12-20 03:19:51的发言:

以前在哪见过。

1

int a,b;

a=a+b; //此时a为a与b之和 b=a-b; //此时b=a a=a-b; //此时a=b

2

a^=b^=a^=b; 详见http://search.csdn.net/Expert/topic/777/777846.xml?temp=.8238947

这个主意不错!!!

2004-12-21 13:21
迷失星际
Rank: 1
等 级:新手上路
帖 子:358
专家分:0
注 册:2004-7-9
得分:0 

^是什么运算符?可以说一下吗?


2004-12-21 16:52
aczhe
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2004-12-23
得分:0 
支持4楼第一种做法

君子敬其在己者,而不慕其在天者,是已日进也。
2004-12-23 19:03
aczhe
Rank: 1
等 级:新手上路
帖 子:90
专家分:0
注 册:2004-12-23
得分:0 
按位异或──^
(1)格式:x^y
(2)规则:对应位相同时为0,不同时为1:3^9=10。
(3)主要用途:使1个数的某(些)位翻转(即原来为1的位变为0,为0的变为1),其余各位不变

君子敬其在己者,而不慕其在天者,是已日进也。
2004-12-23 19:09



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




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

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