将一个数组中的值按逆序顺序重新存放,例如,原来顺序为8,6,5,4,1。要求改为1,4,5,6,8。用C语言编写一段基础程序
时间: 2024-12-22 20:23:00 浏览: 1
在C语言中,可以使用两个指针,一个指向数组的开始,另一个指向数组的结束,然后交换这两个指针所指向的元素,每次移动指针直到它们相遇。这是一种简单的遍历方法,下面是一个基础的示例:
```c
#include <stdio.h>
// 交换两个整数的函数
void swap(int* a, int* b) {
int temp = *a;
*a = *b;
*b = temp;
}
// 主函数,将数组逆序
void reverse_array(int arr[], int size) {
int start = 0; // 开始指针
int end = size - 1; // 结束指针
while (start < end) { // 当开始小于结束时循环
swap(&arr[start], &arr[end]); // 交换位置
start++; // 移动开始指针
end--; // 移动结束指针
}
}
int main() {
int array[] = {8, 6, 5, 4, 1};
int length = sizeof(array) / sizeof(array[0]);
printf("Original array: ");
for (int i = 0; i < length; i++) {
printf("%d ", array[i]);
}
reverse_array(array, length);
printf("\nReversed array: ");
for (int i = 0; i < length; i++) {
printf("%d ", array[i]);
}
return 0;
}
```
这个程序首先打印原始数组,然后调用`reverse_array`函数来逆序数组,最后再次打印逆序后的结果。
阅读全文