用c语言实现数组逆序 输入格式:第一行一个整数n(3<=n<=10)代表数的个数。 第二行n个整数(空格隔开)(这些数在0~10^6之间)。 输出格式:n个整数(空格隔开)。
时间: 2024-10-24 07:10:59 浏览: 37
在C语言中,要实现数组逆序,你可以使用两个指针,一个指向数组的开始,另一个指向结束。然后交换这两个指针所指向的元素,直到它们相遇或交叉。以下是完整的代码示例:
```c
#include <stdio.h>
void reverse_array(int arr[], int n) {
if (n <= 1)
return; // 如果数组只有一个元素或为空,无需反转
int start = 0;
int end = n - 1;
while (start < end) { // 当起点小于终点时继续交换
int temp = arr[start]; // 临时存储起始位置的元素
arr[start] = arr[end]; // 将末尾元素移到起始位置
arr[end] = temp; // 将起始位置的元素移到末尾位置
start++; // 移动起始指针
end--; // 移动结束指针
}
}
int main() {
int n;
scanf("%d", &n); // 输入数组长度
assert(3 <= n && n <= 10); // 确保输入合法范围
int arr[n];
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
reverse_array(arr, n); // 反转数组
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]); // 输出逆序后的数组
}
printf("\n"); // 结果后换行
return 0;
}
```
在这个代码中,`reverse_array`函数负责实际的数组反转操作,而`main`函数负责读取输入、调用函数并打印结果。
阅读全文