Реализовать алгоритм сортировки модифицированным методом простого выбора - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Реализовать алгоритм сортировки модифицированным методом простого выбора.

Решение задачи: «Реализовать алгоритм сортировки модифицированным методом простого выбора»

textual
Листинг программы
#include <stdio.h>
 
int main()
{
    //setlocale(LC_ALL, "russian");
    const int N = 5;
    int a[N];
    int index;
    int buf;
    for (int i = 0; i < N; i++) /* Заполняем массив*/
    {
        printf("a[%i]: ", i);
        scanf_s("%d", &a[i]);   
    }
 
    int min = a[0];
    for (int i = 0; i < N; i++) /*Находим индекс минимального елемента массива, и менем его с 0 елементом местами*/
    {   
        if (min > a[i])
        {
            min = a[i];
            index = i;
            buf = a[0];
            a[0] = a[i];
            a[i] = buf;
        }       
    }
    for (int i = 0; i < N; i++) /*Выводим отсортированный масив*/
        printf("%i ", a[i]);        
    scanf_s("%i", &index);/*Для того что бы программа не закрывалась*/
    return 0;
}

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

  1. Включаем заголовочный файл для использования функций ввода-вывода
  2. Объявляем функцию main()
  3. Устанавливаем локальную настройку на русский язык с помощью функции setlocale(LC_ALL, russian)
  4. Задаем константу N, которая определяет размер массива a
  5. Объявляем массив a типа int с размерностью N
  6. Объявляем переменную index для хранения индекса минимального элемента
  7. Объявляем переменную buf для временного хранения значения элемента a
  8. Заполняем массив a с помощью цикла for и функции scanf_s, которая считывает целочисленное значение и записывает его в соответствующий элемент массива
  9. Инициализируем переменную min значением первого элемента массива a
  10. Находим индекс минимального элемента массива с помощью цикла for и условного оператора if. Если текущий элемент меньше min, то обновляем min и index
  11. Меняем местами минимальный элемент и первый элемент массива с помощью переменных buf и a[0]
  12. Выводим отсортированный массив с помощью цикла for и функции printf
  13. Считываем целочисленное значение с помощью функции scanf_s в переменную index для предотвращения закрытия программы
  14. Возвращаем 0, чтобы указать, что программа успешно завершилась

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

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