Как получить массив элементов на выходе если возвращаемый тип функции int?

В C можно вернуть массив элементов на выходе, хотя синтаксически это невозможно.
Однако, вы можете вернуть указатель на массив или передать указатель на массив в функцию, чтобы модифицировать его внутри функции.

Вариант 1: Возвращение указателя на массив

В этом случае вы можете объявить массив внутри функции, а затем вернуть указатель на этот массив. Например:

#include <stdio.h>

int* getArray() {
    static int arr[5] = {1, 2, 3, 4, 5};
    return arr;
}

int main() {
    int* arr = getArray();
    
    for (int i = 0; i < 5; i++) {
        printf("%d ", arr[i]);
    }
    
    return 0;
}

В этом примере функция getArray объявляет статический массив arr и затем возвращает указатель на этот массив. В функции main мы принимаем этот указатель и выводим содержимое массива.

Вариант 2: Передача указателя на массив в функцию

Если вам нужно изменить массив внутри функции и иметь доступ к этому измененному массиву вне функции, вы можете передать указатель на массив в функцию. Например:

#include <stdio.h>

void modifyArray(int* arr, int size) {
    for (int i = 0; i < size; i++) {
        arr[i] = arr[i] * 2;
    }
}

int main() {
    int arr[5] = {1, 2, 3, 4, 5};
    
    modifyArray(arr, 5);
    
    for (int i = 0; i < 5; i++) {
        printf("%d ", arr[i]);
    }
    
    return 0;
}

Здесь мы передаем указатель arr и размер массива в функцию modifyArray. Внутри функции мы умножаем каждый элемент массива на 2. В функции main мы видим измененный массив.

Оба этих варианта позволяют получить массив элементов на выходе, когда возвращаемый тип функции int. Вариант, который вам более подходит, зависит от ваших конкретных требований и предпочтений.