黑马程序员技术交流社区

标题: C语言中 a b 变换 [打印本页]

作者: 星耀    时间: 2015-8-10 09:51
标题: C语言中 a b 变换
第一种方式:
int main(){
    int a = 3, b = 4;
    int temp = a;
    a = b;
    b = a;
    printf("a=%d,b=%d", a, b);
}
第二种方式:
int main(){
    int a = 3, b = 4;
    a = a+b;
    b = a - b;
    a = a - b;
   printf("a=%d,b=%d", a, b);
}
第三种方式:
int main(){
    int a = 3, b = 4;
    a = a ^ b;
    b = a ^ b;
    a = a ^ b;
    printf("a=%d,b=%d", a, b);
}
作者: 我的呸    时间: 2015-8-10 09:53
谢谢分享
作者: 庐山烟雨浙江潮    时间: 2015-8-10 18:41
不错,get了
作者: hejunxin    时间: 2015-8-10 21:42
赞一个,好
作者: STARlove    时间: 2015-8-10 21:43
谢谢分享。。。。。。。。。。。
作者: lzfree    时间: 2015-8-10 22:17
翁老师教你的吗。。。
作者: archdem1    时间: 2015-8-10 22:29
你可以试试指针实现。
作者: WPeng    时间: 2015-8-10 23:00
翁老师教你的吗。。。
作者: 星耀    时间: 2015-8-12 23:19
lzfree 发表于 2015-8-10 22:17
翁老师教你的吗。。。

视频啊。。
作者: 星耀    时间: 2015-8-12 23:20
WPeng 发表于 2015-8-10 23:00
翁老师教你的吗。。。

看视频的。。
作者: fersh    时间: 2015-8-12 23:24
应该还有,别的方法,像指针
作者: 阿伦666    时间: 2015-8-12 23:27
lzfree 发表于 2015-8-10 22:17
翁老师教你的吗。。。

亲,你到底是翁老师手下哪位高徒
作者: 阿伦666    时间: 2015-8-12 23:28
可以的,少年
作者: 15095185209    时间: 2015-8-13 10:11
加油啊!
作者: nancexp    时间: 2015-8-13 10:44
来看看,这个很关注
作者: itufo    时间: 2015-8-13 11:10
能告诉我
    a = a ^ b;
    b = a ^ b;
    a = a ^ b;
什么意思吗
作者: lucky24    时间: 2015-8-13 18:12
一下知道了好多
作者: 红双喜    时间: 2015-8-13 19:10
itufo 发表于 2015-8-13 11:10
能告诉我
    a = a ^ b;
    b = a ^ b;

按位异或 视频里讲了
作者: 红双喜    时间: 2015-8-13 19:11
lzfree 发表于 2015-8-10 22:17
翁老师教你的吗。。。

翁老师是谁?
作者: cheenbee    时间: 2015-8-13 19:57
itufo 发表于 2015-8-13 11:10
能告诉我
    a = a ^ b;
    b = a ^ b;

a=a^b;

b=a^b;----->b=a^b^b

a=a^b;------>a=a^b^"b"----->a=a^b^a(此处的最后一个b已是a)
作者: nulifendou    时间: 2015-8-13 21:17
itufo 发表于 2015-8-13 11:10
能告诉我
    a = a ^ b;
    b = a ^ b;

看位运算的异或




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2