用指针的方法便携一个使用指针的c函数,交换数组a和数组b中对应的元素
时间: 2025-01-30 21:10:48 浏览: 43
以下是一个使用指针的C函数,用于交换两个数组中对应的元素:
```c
#include <stdio.h>
void swap_arrays(int *a, int *b, int size) {
for (int i = 0; i < size; i++) {
int temp = *(a + i);
*(a + i) = *(b + i);
*(b + i) = temp;
}
}
int main() {
int a[] = {1, 2, 3, 4, 5};
int b[] = {10, 20, 30, 40, 50};
int size = sizeof(a) / sizeof(a[0]);
printf("交换前:\n");
printf("数组a: ");
for (int i = 0; i < size; i++) {
printf("%d ", a[i]);
}
printf("\n数组b: ");
for (int i = 0; i < size; i++) {
printf("%d ", b[i]);
}
swap_arrays(a, b, size);
printf("\n\n交换后:\n");
printf("数组a: ");
for (int i = 0; i < size; i++) {
printf("%d ", a[i]);
}
printf("\n数组b: ");
for (int i = 0; i < size; i++) {
printf("%d ", b[i]);
}
return 0;
}
```
这个程序的工作原理如下:
1. `swap_arrays` 函数接受两个整数指针(数组a和数组b)和数组的大小作为参数。
2. 使用for循环遍历数组的每个元素。
3. 使用指针算术和间接寻址操作符(*)来访问和交换对应位置的元素。
4. 在 `main` 函数中,我们创建了两个整数数组,初始化它们,并打印出交换前的值。
5. 调用 `swap_arrays` 函数来交换数组元素。
6. 最后,打印出交换后的数组值。
这个程序展示了如何使用指针来操作数组元素。通过这种方式,我们可以在函数内部修改原始数组的内容,而不是它们的副本。
阅读全文
相关推荐












