Упорядочивание массива по возрастанию (пузырьковая сортировка) - C (СИ)
Формулировка задачи:
Подскажите пожалуйста как упорядочить элементы одномерного массива,состоящего из N вещественных элементов по возрастанию методом пузырьковой сортировки?
Решение задачи: «Упорядочивание массива по возрастанию (пузырьковая сортировка)»
textual
Листинг программы
for(i=0;i<N;i++)
{
for(j=1;j<N-i;j++)
{
if(mas[j-1]>mas[j])
{
tmp=mas[i];
mas[i]=mas[j];
mas[j]=tmp;
}
}
}
Объяснение кода листинга программы
- Создан цикл
forс переменнойiи счётчикомN(обычно это количество элементов в массивеmas). - Внутренний цикл
forначинается сj=1и идёт доN-i, то есть до тех пор, покаiне станет равнымN. - Условие
ifпроверяет, больше ли элементmas[j-1]элементаmas[j]. - Если условие истинно, то выполняется блок кода, который меняет местами элементы
mas[i]иmas[j]. - Значение переменной
tmpстановится равнымmas[i], а значениеmas[i]становится равнымmas[j]. - Значение
mas[j]становится равнымtmp. - По завершении внутреннего цикла
for, внешний циклforувеличивается на единицу. - Циклы повторяются, пока
iменьшеN. - Код не содержит обработку ошибок или завершающих операций.