Реализовать алгоритм сортировки модифицированным методом простого выбора - 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;
}
Объяснение кода листинга программы
- Включаем заголовочный файл
для использования функций ввода-вывода - Объявляем функцию main()
- Устанавливаем локальную настройку на русский язык с помощью функции setlocale(LC_ALL,
russian) - Задаем константу N, которая определяет размер массива a
- Объявляем массив a типа int с размерностью N
- Объявляем переменную index для хранения индекса минимального элемента
- Объявляем переменную buf для временного хранения значения элемента a
- Заполняем массив a с помощью цикла for и функции scanf_s, которая считывает целочисленное значение и записывает его в соответствующий элемент массива
- Инициализируем переменную min значением первого элемента массива a
- Находим индекс минимального элемента массива с помощью цикла for и условного оператора if. Если текущий элемент меньше min, то обновляем min и index
- Меняем местами минимальный элемент и первый элемент массива с помощью переменных buf и a[0]
- Выводим отсортированный массив с помощью цикла for и функции printf
- Считываем целочисленное значение с помощью функции scanf_s в переменную index для предотвращения закрытия программы
- Возвращаем 0, чтобы указать, что программа успешно завершилась