使用C语言编制一个程序,用指针法的手段将你感兴趣的一组有意义的数据通过键盘输入并保存到数组中,再用指针法将数组元素整理为和原来相反的顺序,最后输出这些数据。
时间: 2024-03-03 08:46:52 浏览: 58
好的,我可以帮你编写这个程序。以下是代码:
```c
#include <stdio.h>
#define MAX_SIZE 100
void reverse(int *arr, int size);
int main() {
int arr[MAX_SIZE];
int size;
printf("请输入数组大小(不超过 %d):", MAX_SIZE);
scanf("%d", &size);
printf("请输入 %d 个整数:", size);
for (int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
reverse(arr, size);
printf("反转后的数组:");
for (int i = 0; i < size; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
void reverse(int *arr, int size) {
int *p1 = arr;
int *p2 = arr + size - 1;
while (p1 < p2) {
int temp = *p1;
*p1 = *p2;
*p2 = temp;
p1++;
p2--;
}
}
```
这个程序使用指针法将输入的整数数组反转输出。在 `reverse` 函数中,我们定义了两个指针 `p1` 和 `p2`,分别指向数组的第一个和最后一个元素。然后我们交换它们所指向的元素,并让 `p1` 指向下一个元素,`p2` 指向上一个元素,直到它们相遇为止。
你可以根据需要修改数组的数据类型和数组大小。
阅读全文