Как перевернуть массив в си?

Переворачивание массива в языке C можно осуществить следующим образом:

1. Создайте функцию, которая будет принимать на вход массив, его длину и возвращать перевернутый массив.

int* reverseArray(int *arr, int length);

2. Внутри функции создайте временную переменную temp для обмена элементов массива.

3. Используйте цикл for для обхода половины массива. В нем производите замену элементов массива:

for (int i = 0; i < length / 2; i++) {
    temp = arr[i];
    arr[i] = arr[length - i - 1];
    arr[length - i - 1] = temp;
}

Здесь i - текущий индекс элемента, length - длина массива, arr[i] - текущий элемент и arr[length - i - 1] - элемент, с которым мы меняем значение.

4. По завершении цикла, функция должна вернуть перевернутый массив.

return arr;

Теперь вы можете вызвать функцию reverseArray() для переворачивания массива.

Вот полный пример кода:

#include <stdio.h>

int* reverseArray(int *arr, int length) {
    int temp;
    for (int i = 0; i < length / 2; i++) {
        temp = arr[i];
        arr[i] = arr[length - i - 1];
        arr[length - i - 1] = temp;
    }
    return arr;
}

int main() {
    int array[] = {1, 2, 3, 4, 5};
    int length = sizeof(array) / sizeof(array[0]);
    
    int* reversedArray = reverseArray(array, length);
    
    printf("Reversed array: ");
    for (int i = 0; i < length; i++) {
        printf("%d ", reversedArray[i]);
    }
    
    return 0;
}

В данном примере массив [1, 2, 3, 4, 5] переворачивается в функции reverseArray() и выводится на экран [5, 4, 3, 2, 1].