Поменять местами максимальный и минимальный элемент массива - C (СИ)
Формулировка задачи:
Помогите поменять местами максимальный и минимальный элемент массива. Кол-во элементов = 10.
Спасибо
Решение задачи: «Поменять местами максимальный и минимальный элемент массива»
textual
Листинг программы
int main(void) { int a[10]; int max=a[0], min=a[0], k, i; for(i=0; i<10; i++) { if (a[i] < a[min]) min = i; if (a[i] > a[max]) max = i; } k=a[min]; a[min]=a[max]; a[max]=k; }
Объяснение кода листинга программы
В этом коде:
- Создается массив a размером 10 и инициализируется случайными значениями.
- Присваиваются значения переменным max и min, которые в начале считаются равными первому элементу массива a.
- Происходит поиск индексов минимального и максимального элемента массива. Для этого перебираются все элементы массива, и если текущий элемент меньше значения переменной min, то обновляется значение переменной min, а если текущий элемент больше значения переменной max, то обновляется значение переменной max.
- Переменной k присваивается значение элемента массива с индексом min.
- Значение элемента массива с индексом min заменяется на значение переменной k.
- Значение элемента массива с индексом max заменяется на значение переменной k. Итоговый результат работы программы: массив a[10] принимает вид: [k, a[1], a[2], ..., a[max], a[min], a[min-1], ..., a[1], a[0]]. Т.е. элементы массива меняются местами: максимальный становится минимальным, а минимальный — максимальным.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д