Прокомментировать код сортировки массива - C (СИ)
Формулировка задачи:
к этому коды нужны комментарии.
код должен упорядочивать массив по возрастанию.
добавьте возможность создавать массив состоящий из цифр, количество которых будет введено с клавиатуры, который затем будет упорядочиваться по возрастанию.
не использовать других массивов.
#include <stdio.h> #include <math.h> #include <conio.h> int main() { int a1[10]={9,8,7,6,4,3,2,5,1,2012}; int i,j,m,min; for(i=0;i<10;i++) { min=a1[i]; m=i; for(j=i;j<10;j++) { if (a1[j]<min) { min=a1[j]; m=j; } } a1[m]=a1[i]; a1[i]=min; } for(i=0;i<10;i++) printf("%d\t", a1[i]); getch(); }
Решение задачи: «Прокомментировать код сортировки массива»
textual
Листинг программы
#include <stdio.h> #include <math.h> #include <conio.h> int main() { int a1[10]={9,8,7,6,4,3,2,5,1,2012};//Создается массив из 10 элементов и сразу инициализируется int i,j,m,min;//Объявление переменных //Сортировка for(i=0;i<10;i++) { min=a1[i];//Присваиваем переменной min значение первого не отсортированного элемента массива m=i;//запоминаем индекс элемента for(j=i;j<10;j++)//Проходим по всем не отсортированным элементам массива { if (a1[j]<min)//если значение элемента меньше минимального, тогда { min=a1[j];//присваиваем переменной min значение элемента a1[j] m=j;//запоминаем индекс минимального элемента } } a1[m]=a1[i];//Переставляем элементы массива a1[i]=min; } for(i=0;i<10;i++)//Выводим массив printf("%d\t", a1[i]); getch(); }
Объяснение кода листинга программы
- #include
- подключаем файл стандартного ввода/вывода - #include
- подключаем файл математических функций - #include
- подключаем файл функций работы с консолью - int main() - функция main() является точкой входа в программу
- int a1[10]={9,8,7,6,4,3,2,5,1,2012}; - создаем массив из 10 элементов и сразу инициализируем его значениями
- int i,j,m,min; - объявляем переменные для цикла сортировки (i, j, m, min)
- for(i=0;i<10;i++) - цикл for для прохода по всем элементам массива от 0 до 9
- min=a1[i]; - присваиваем переменной min значение первого не отсортированного элемента массива
- m=i; - запоминаем индекс элемента
- for(j=i;j<10;j++) - вложенный цикл for для прохода по всем не отсортированным элементам массива
- if (a1[j]<min) - если значение элемента меньше минимального, тогда
- min=a1[j]; - присваиваем переменной min значение элемента a1[j]
- m=j; - запоминаем индекс минимального элемента
- a1[m]=a1[i]; - переставляем элементы массива
- a1[i]=min; - меняем местами минимальный элемент и элемент под индексом i
- for(i=0;i<10;i++) - цикл for для вывода отсортированного массива
- printf(
%d\t
, a1[i]); - выводим значение элемента массива с пробелом в качестве разделителя - getch(); - функция для приостановки выполнения программы и передачи управления операционной системе
- } - закрытие функции main()
- } - закрытие цикла for во втором вложенном цикле for
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д