使用C语言编制一个程序,用指 针法的手段将你感兴趣的一组有 意义的数据通过键盘输入并保存 到数组中,再用指针法将数组元 素整理为和原来相反的顺序,最 后输出这些数据。
时间: 2024-03-01 20:50:40 浏览: 18
好的,下面是该程序的代码:
```c
#include <stdio.h>
#include <stdlib.h>
#define MAX_SIZE 50
void reverse(int *arr, int size) {
int *start = arr, *end = arr + size - 1;
while (start < end) {
int temp = *start;
*start = *end;
*end = temp;
start++;
end--;
}
}
int main() {
int arr[MAX_SIZE];
int size;
printf("请输入数组大小(不超过%d):", MAX_SIZE);
scanf("%d", &size);
printf("请输入数组元素:");
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]);
}
return 0;
}
```
首先在程序中定义了一个常量 `MAX_SIZE`,表示数组的最大大小。然后定义了一个 `reverse` 函数,用于将数组元素整理为逆序。该函数使用指针 `start` 和 `end` 分别指向数组的首尾元素,然后不断交换它们指向的元素,直到 `start` 大于等于 `end`。
在 `main` 函数中,首先从键盘输入数组的大小,然后输入数组元素。接着调用 `reverse` 函数将数组元素整理为逆序,最后输出逆序后的数组元素。
注意,这里使用指针的方式来处理数组元素,可以提高程序的效率和灵活性。