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函数中,我们定义了两个整数变量num1和num2,并初始化为10和20。然后,我们调用swap函数,并传递num1和num2的地址作为参数。这样,swap函数内部的指针操作就能修改num1和num2的值,实现了两个数的交换。
运行上述代码将输出:
交换前: num1 = 10 num2 = 20 交换后: num1 = 20 num2 = 10
可以看到,经过交换函数的调用后,num1和num2的值已经交换了。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:c++指针用法
- 下一篇:c++指针实现两个数交换
