Поменять местами максимальный и минимальный элемент массива - 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;
}

Объяснение кода листинга программы

В этом коде:

  1. Создается массив a размером 10 и инициализируется случайными значениями.
  2. Присваиваются значения переменным max и min, которые в начале считаются равными первому элементу массива a.
  3. Происходит поиск индексов минимального и максимального элемента массива. Для этого перебираются все элементы массива, и если текущий элемент меньше значения переменной min, то обновляется значение переменной min, а если текущий элемент больше значения переменной max, то обновляется значение переменной max.
  4. Переменной k присваивается значение элемента массива с индексом min.
  5. Значение элемента массива с индексом min заменяется на значение переменной k.
  6. Значение элемента массива с индексом max заменяется на значение переменной k. Итоговый результат работы программы: массив a[10] принимает вид: [k, a[1], a[2], ..., a[max], a[min], a[min-1], ..., a[1], a[0]]. Т.е. элементы массива меняются местами: максимальный становится минимальным, а минимальный — максимальным.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

15   голосов , оценка 4 из 5
Похожие ответы