编程实现:编写一个使用指针的函数,交换数组a和数组b的对应元素。在主函数中输入和输出数组。算法分析:swap(int *p1,int *p2)函数(C语言)
时间: 2024-03-01 11:53:40 浏览: 19
下面是实现代码:
```c
#include <stdio.h>
void swap(int *p1, int *p2);
int main() {
int a[5], b[5];
int i;
printf("Enter array a: ");
for (i = 0; i < 5; i++) {
scanf("%d", &a[i]);
}
printf("Enter array b: ");
for (i = 0; i < 5; i++) {
scanf("%d", &b[i]);
}
swap(a, b);
printf("Array a after swapping: ");
for (i = 0; i < 5; i++) {
printf("%d ", a[i]);
}
printf("\nArray b after swapping: ");
for (i = 0; i < 5; i++) {
printf("%d ", b[i]);
}
return 0;
}
void swap(int *p1, int *p2) {
int i;
int temp;
for (i = 0; i < 5; i++) {
temp = *(p1 + i);
*(p1 + i) = *(p2 + i);
*(p2 + i) = temp;
}
}
```
该程序中,我们定义了一个 `swap` 函数,该函数使用指针交换了两个数组的对应元素。在 `main` 函数中,我们输入了两个数组并调用 `swap` 函数,然后输出交换后的两个数组。