Другие языки программирования и технологии

Помогите пожалуйста с задачкай на языке СИ

Из массива удалить последний из нечетных элементов.
Пример: из массива A[5]: 1 3 4 5 6 должен получиться
массив A[4]: 1 3 4 6.
#include <stdio.h>
#include <locale.h>
#include <stdlib.h>
#include <time.h>
#include <limits.h>
#include <conio.h>
int main () {
    int * vector = NULL, * temp = NULL;
    rsize_t size = 5;
    size_t n, m, index = size;
    setlocale(LC_CTYPE, "Russian_Russia.1251");
    printf("\n\tВведите массив: \n\n");
    vector = (int *)calloc(size, sizeof(int));
    for (n = 0; n < size; n++) {
        printf(" vector[%u] -> ");
        scanf_s("%i", &vector[n]);
    }
    system("cls");
    for (n = 0; n < size; n++) printf(" %i ", vector[n]);
    printf("\n");
    for (--n; n >= ULONG_MAX; n--) if (vector[n] & 1) { index = n; break; }
    if (index != size) {
        temp = (int *)calloc(size, sizeof(int));
        for (n = 0; n < size; n++) temp[n] = vector[n];
        vector = (int *)realloc(vector, (size - 1) * sizeof(int));
        m = 0;
        for (n = 0; n < size; n++) if (n != index) vector[m++] = temp[n];
        free(temp);
        temp = NULL;
        --size;
        for (n = 0; n < size; n++) printf(" %i ", vector[n]);
    } else printf(" Массив не содержит нечётных элементов! \n\a");
    free(vector);
    vector = NULL;
    _getch();
    return 0;
}
Eugen Misjurin
Eugen Misjurin
97 287
Лучший ответ
1. Перебирать элементы в цикле, если нечетный то запомнить номер элемента или перебирать с конца, если нечетный запомнить номер элемента и break.
2. Цикл от запомненного номера до предпоследнего - присваивать значение следующего.
3. Уменьшить размер массива на единицу.
да, все верно, с конца просматриваем массив, запоминаем индекс первого попавшегося нечетного элемента. Затем размерность массива уменьшаем на единицу и сжимаем массив.
осталось выяснить, как определить элемент четный или нет. вот это я не знаю
Nurbek Turaly Uulu
Nurbek Turaly Uulu
7 296
а счетчик от первого нечетного сразу изменять на 2 вам преподаватель не позволяет или какие то убеждения?? ?
а массив "безразмерный"? если в функции то надобы