编程实现:编写一个使用指针的函数,交换数组a和数组b的对应元素。在主函数中输入和输出数组。算法分析:swap(int *p1,int *p2)函数(C语言)
时间: 2024-03-01 12:55:21 浏览: 93
C语言程序设计-编写函数实现两个数据的交换,在主函数中输入任意三个数据,调用函数对这三个数据从大到小排序;.c
5星 · 资源好评率100%
可以使用指针实现交换数组的对应元素,具体实现如下:
```c
#include <stdio.h>
void swap(int *p1, int *p2);
int main() {
int a[5] = {1, 2, 3, 4, 5};
int b[5] = {6, 7, 8, 9, 10};
printf("Before swapping:\n");
for(int i=0; i<5; i++) {
printf("%d ", a[i]);
}
printf("\n");
for(int i=0; i<5; i++) {
printf("%d ", b[i]);
}
printf("\n");
swap(a, b);
printf("After swapping:\n");
for(int i=0; i<5; i++) {
printf("%d ", a[i]);
}
printf("\n");
for(int i=0; i<5; i++) {
printf("%d ", b[i]);
}
printf("\n");
return 0;
}
void swap(int *p1, int *p2) {
for(int i=0; i<5; i++) {
int temp = *(p1+i);
*(p1+i) = *(p2+i);
*(p2+i) = temp;
}
}
```
在主函数中先定义两个数组 `a` 和 `b`,用于测试交换函数。调用 `swap` 函数时,传入两个数组的指针,函数内部使用指针对数组元素进行交换。最终输出交换后的数组元素。
阅读全文