В большинстве формулировок задач(задание 1) контрольной работы содержатся следующие слова: поменять, отсортировать, включить элемент.
Поменять
Для того чтобы поменять местами два элемента в массиве необходимо знать их индексы.
Допустим у нас есть инициализированный массив arr, и есть индексы элементов, которые необходимо поменять местами - lhsIndex и rhsIndex . Нам необходимо поменять местами значения на этих индексах.
(Note! rhs - right hand side, left hand side. Вы можете назвать переменные как вам угодно, но некоторые гайды лучше соблюдать. Например если вы создаете переменную для хранения индекса рекомендуется это как-то обозначить, например словом Index.)
Code snippet:
int _temp = arr[lhsIndex];
arr[lhsIndex] = arr[rhsIndex];
arr[rhsIndex] = _temp;
НО! Вся сложность задач этой группы заключается в том, чтобы определить эти индексы.
Некоторые вариации: поменять максимальный и минимальный, поменять минимальный и последний отрицательный, поменять максимальный и первый отрицательный etc.
Задача: Поменять местами максимальный элемент массива и минимальный, расположенный в части от максимального до конца массива = 1
Сортировка
Классика жанра, вопрос в том, какую часть массива сортировать либо по какому признаку(e.g только четные элементы). Если сортировать нужно ОТ и ДО, то необходимо удостовериться что ОТ < ДО. Также необходимо понимать как делать сортировку по возрастанию и убыванию.
Задача: Отсортировать часть массива между минимальным и максимальным элементами массива = 2
Включить элемент
Включение элемента в массив имеет в себе две подзадачи, первая - свойство этого элемента(он может быть задан, а может быть например минимальным элементом или средним среди всех), вторая - расширение и сдвиг массива(Внимание на доску)
Задача: В одномерном массиве размерностью n включить сумму минимального и максимального элементов после элемента с заданным номером = 2
Поменять
int _temp = arr[lhsIndex];
arr[lhsIndex] = arr[rhsIndex];
arr[rhsIndex] = _temp;
Сортировка
Включить элемент