DH_Fantasy的博客

iOS Developer

C语言练习篇-2交换两个变量的值

练习:交换两个变量的值。

方法一:中间变量

#include <stdio.h>
int main()
{
    int a=10;
    int b=4;
    printf("a=%d,b=%d\n",a,b);

    //定义一个中间变量来完成两个变量之间的交换
    int temp;
    temp=a;
    a=b;
    b=temp;

    printf("a=%d,b=%d\n",a,b);
    return 0;
}

方法二:宏定义

#include<stdio.h>

// 定义一个交换两个数的宏
#define SWAP(x,y,temp) ((temp) = (x),(x) = (y),(y) = (temp))
int main()
{
    int a=10;
    int b=4;
    printf("a=%d,b=%d\n",a,b);

    int temp;
    SWAP(a, b, temp);

    printf("a=%d,b=%d\n",a,b);
    return 0;
}

方法三:算术运算

#include<stdio.h>
int main()
{
    int a=10;
    int b=4;
    printf("a=%d,b=%d\n",a,b);

    a=b-a;//a=-6
    b=b-a;//b=10
    a=a+b;//a=4

    printf("a=%d,b=%d\n",a,b);
    return 0;
}

方法四:位运算

#include<stdio.h>
int main()
{
    int a=10;
    int b=4;
    printf("a=%d,b=%d\n",a,b);

    a = a^b;
    b = b^a;//b = b^a^b = a
    a = a^b;

    printf("a=%d,b=%d\n",a,b);
    return 0;
}
阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fd070910/article/details/51547528
文章标签: c语言 交换两值
个人分类: C语言练习篇
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

C语言练习篇-2交换两个变量的值

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭