在C语言中,要实现数组的逆序存放,可以通过交换数组首尾元素的方法来完成。具体操作如下:
start
),另一个指向数组的结束位置(例如end
)。start
小于end
时,交换start
和end
所指向的元素值。start
向后移动一位,将end
向前移动一位。start
大于等于end
为止。以下是一个简单的示例代码:
#include<stdio.h>
void reverseArray(int arr[], int start, int end) {
while (start < end) {
// 交换首尾元素
int temp = arr[start];
arr[start] = arr[end];
arr[end] = temp;
// 更新指针
start++;
end--;
}
}
int main() {
int arr[] = {1, 2, 3, 4, 5};
int n = sizeof(arr) / sizeof(arr[0]);
printf("原始数组:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
reverseArray(arr, 0, n - 1);
printf("逆序后的数组:\n");
for (int i = 0; i < n; i++) {
printf("%d ", arr[i]);
}
printf("\n");
return 0;
}
运行上述代码,输出结果如下:
原始数组:
1 2 3 4 5
逆序后的数组:
5 4 3 2 1