黑马程序员技术交流社区

标题: 交换变量方法 [打印本页]

作者: Eric_h    时间: 2015-9-25 22:56
标题: 交换变量方法
#include<stdio.h>
int main() {
    //定义变量 temp表示临时变量
    int a=1,b=2,temp;
    printf("交换前a=%d,b=%d\n",a,b);
    temp = a;
    a = b;
    b = temp;
    printf("交换后a=%d,b=%d\n",a,b);
}


作者: 杰杰    时间: 2015-9-26 11:24
不用TEMP也行
int a=1,b=2;
a=a+b;  //a为合
b=a-b;  //合减去b  b为a
a=a-b;  //此时b为a    合减去a为b   此时a为最初的b。

作者: hejianchun    时间: 2015-9-26 11:34
到指针的时候还有另一种用法。。。嘿嘿
作者: Eric_h    时间: 2015-10-1 12:33
杰杰 发表于 2015-9-26 11:24
不用TEMP也行
int a=1,b=2;
a=a+b;  //a为合

嗯,方法有很多
作者: Abuzzworld    时间: 2015-10-1 13:31
    a=a^b;
    b=a^b;
    a=a^b;
用按位异或也可以
作者: A侠    时间: 2015-10-1 14:34
?????????????
作者: LPz1994    时间: 2015-10-2 11:09
!!!!!!!!!!!!!!!!!!!!!!!!!!可以的




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