c语言

c语言逆序存放数组怎么实现

小亿
154
2023-12-04 10:41:48
栏目: 编程语言

要实现C语言逆序存放数组,可以使用两个指针分别指向数组的首尾元素,然后交换它们的值,然后向中间移动指针,重复交换操作,直到指针相遇为止。以下是一个示例代码:

#include <stdio.h>

void reverseArray(int arr[], int size) {
    int start = 0;
    int end = size - 1;

    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 size = sizeof(arr) / sizeof(arr[0]);

    printf("Original array: ");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    reverseArray(arr, size);

    printf("Reversed array: ");
    for (int i = 0; i < size; i++) {
        printf("%d ", arr[i]);
    }
    printf("\n");

    return 0;
}

此代码将输出:

Original array: 1 2 3 4 5 
Reversed array: 5 4 3 2 1 

reverseArray函数中,start指针初始指向数组的第一个元素,end指针初始指向数组的最后一个元素。通过交换arr[start]arr[end]的值,然后向中间移动指针,重复交换操作,直到指针相遇为止。

0
看了该问题的人还看了