Если массив не имеет там 1000+ элементов, то просто создай новый и приравняй старые элементы, но без того, который хочешь убрать тип у тебя есть массив A = {1, 2, 3, 4} тебе нужно убрать третий элемент можно описать как функцию, ща точно не вспомню с++ static int Remove(int[] A, int k) { int[] B = new int[A.length-1] for( int i = 0; i < B.length; i++) { if (i < k) B = A; if (i > k) B = A[i++]; } return B } Могу ошибаться, т.к. давно не кодил --- Сообщение объединено с предыдущим 5 фев 2021 Фишка в том, что на вход поступают массив и индекс элемента, который нужно убрать. Ты создаешь новый массив, но с количеством элементов на 1 меньше, чем в исходном Далее если ты не дошел до этого элемента при заполнении, то всё ок Если ты дошел до него, игнорим Если мы ушли дальше элемента, который нужно удалить, то заполняем по индексу на 1 больше, т.е на i++ И возвращаем конечный результат --- Сообщение объединено с предыдущим 5 фев 2021 Потом когда нужно будет выполнить метод, просто уже херачишь Array = Remove(Array, 5) И получишь уже тот же массив, но без 5 элемента --- Сообщение объединено с предыдущим 5 фев 2021 Опять же не забудь про условия и ограничения, чтобы не выйти за границы массива
chadxxx, как варик без STL Если что спрашивай) #include <iostream> int main() { int size = 5; int arr[5] = {23, 3,51, 87,90}; int removeElemIndex = 0; std::cin >> removeElemIndex; for (int i = removeElemIndex; i < size; ++i) { arr = arr[i + 1]; } --size; for (int i = 0; i < size; ++i) { std::cout << arr << " "; } std::cout << std::endl; return 0; }