c语言 用指针完成两个变量的交换
时间: 2024-03-07 07:46:28 浏览: 322
可以通过指针实现两个变量的交换,具体代码如下:
```c
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int x = 5, y = 10;
printf("Before swap: x=%d, y=%d\n", x, y);
swap(&x, &y);
printf("After swap: x=%d, y=%d\n", x, y);
return 0;
}
```
在 `swap` 函数中,我们使用指针操作来交换两个变量的值,函数参数为两个指向 `int` 类型变量的指针 `a` 和 `b`。首先将 `a` 指向的值存储在 `temp` 中,然后将 `a` 指向的值赋给 `b` 指向的值,最后将 `temp` 中的值赋给 `a` 指向的值,即完成了两个变量的交换。在 `main` 函数中,我们调用 `swap` 函数并传入 `x` 和 `y` 的地址,即 `&x` 和 `&y`,这样就可以实现 `x` 和 `y` 的值交换。
相关问题
C语言 用指针完成两个变量的交换
可以通过指针实现两个变量的交换,具体代码如下:
```c
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int x = 5, y = 10;
printf("Before swap: x=%d, y=%d\n", x, y);
swap(&x, &y);
printf("After swap: x=%d, y=%d\n", x, y);
return 0;
}
```
在 `swap` 函数中,我们使用指针操作来交换两个变量的值,函数参数为两个指向 `int` 类型变量的指针 `a` 和 `b`。首先将 `a` 指向的值存储在 `temp` 中,然后将 `a` 指向的值赋给 `b` 指向的值,最后将 `temp` 中的值赋给 `a` 指向的值,即完成了两个变量的交换。在 `main` 函数中,我们调用 `swap` 函数并传入 `x` 和 `y` 的地址,即 `&x` 和 `&y`,这样就可以实现 `x` 和 `y` 的值交换。
C语言使用指针交换两个变量的值
好的,这是一个比较基础的 C 语言问题,可以使用指针来交换两个变量的值,具体代码如下:
```c
#include <stdio.h>
void swap(int *a, int *b) {
int temp = *a;
*a = *b;
*b = temp;
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
printf("交换前:a = %d, b = %d\n", a, b);
swap(&a, &b);
printf("交换后:a = %d, b = %d\n", a, b);
return 0;
}
```
在这个程序中,我们首先定义了一个 `swap` 函数,用于交换两个整数的值,它接受两个指向整数类型变量的指针作为参数。然后在 `main` 函数中,我们从标准输入读取两个整数,并将它们分别赋值给变量 `a` 和 `b`。接着调用 `swap` 函数,交换变量 `a` 和 `b` 的值。最后输出交换前和交换后的值,以验证交换是否成功。
在 `swap` 函数中,我们首先定义了一个临时变量 `temp`,用于保存变量 `a` 的值。然后将变量 `a` 的值赋值为变量 `b` 的值,变量 `b` 的值赋值为临时变量 `temp` 的值,即完成了变量 `a` 和 `b` 的值的交换。注意,在交换变量的值时,我们使用了指针来操作变量的值。
阅读全文