问c中怎么交换数据

c中怎么样交换俩变量的值?

方法一:使用第三个变量

#include <stdio.h>

int main() {
    int a = 5;
    int b = 10;
    int temp;

    printf("交换前:a = %d, b = %d\n", a, b);

    // 使用第三个变量进行值交换
    temp = a;
    a = b;
    b = temp;

    printf("交换后:a = %d, b = %d\n", a, b);

    return 0;
}

方法二:使用异或运算

#include <stdio.h>

int main() {
    int a = 5;
    int b = 10;

    printf("交换前:a = %d, b = %d\n", a, b);

    // 使用异或运算进行值交换
    a = a ^ b;
    b = a ^ b;
    a = a ^ b;

    printf("交换后:a = %d, b = %d\n", a, b);

    return 0;
}

这两种方法都可以实现交换变量的值,只是实现原理不同。使用第三个变量的方法更直观易懂,而使用异或运算的方法可以在不使用额外空间的情况下完成交换。

posted @ 2024-11-24 19:11  2c237c6  阅读(12)  评论(0)    收藏  举报  来源