当前位置:首页C语言 > 正文

c语言指针实现两个数交换

作者:野牛程序员:2023-07-02 07:21:18C语言阅读 3296

在C语言中,可以使用指针来实现两个数的交换。以下是一个使用指针的交换函数示例:

#include <stdio.h>

void swap(int *a, int *b) {
    int temp = *a;
    *a = *b;
    *b = temp;
}

int main() {
    int num1 = 10;
    int num2 = 20;

    printf("交换前:\\n");
    printf("num1 = %d\\n", num1);
    printf("num2 = %d\\n", num2);

    // 调用交换函数
    swap(&num1, &num2);

    printf("交换后:\\n");
    printf("num1 = %d\\n", num1);
    printf("num2 = %d\\n", num2);

    return 0;
}

在上面的示例中,swap函数接受两个整数指针作为参数。内部通过指针解引用来交换两个数的值,将*a的值存储到temp中,然后将*b的值赋给*a,最后将temp的值赋给*b

main函数中,我们定义了两个整数变量num1num2,并初始化为10和20。然后,我们调用swap函数,并传递num1num2的地址作为参数。这样,swap函数内部的指针操作就能修改num1num2的值,实现了两个数的交换。

运行上述代码将输出:

交换前:
num1 = 10
num2 = 20
交换后:
num1 = 20
num2 = 10

可以看到,经过交换函数的调用后,num1num2的值已经交换了。

野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892
野牛程序员教少儿编程与信息学竞赛-微信|电话:15892516892
相关推荐

最新推荐

热门点击