Отсортировать одномерный массив в порядке возрастания, используя метод пузырька - C (СИ)

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

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

Здравствуйте, помогите написать вот такую программу. Заполнить одномерный массив с клавиатуры. Отсортировать одномерный массив в порядке возрастания, используя метод пузырька процесс сортировки отображать на экране в конце вывести отсортированный массив.

Решение задачи: «Отсортировать одномерный массив в порядке возрастания, используя метод пузырька»

textual
Листинг программы
  1. #include<iostream>
  2. using namespace std;
  3. void Filling (int a[], int s);
  4. void Sort_bubble (int a[], int s);
  5. void Show (int a[], int s);
  6. void main (){
  7.     setlocale (LC_ALL, "Rus");
  8.     const int s=5;
  9.     int a[s];
  10.     Filling (a,s);
  11.     Sort_bubble (a,s);
  12.     Show (a,s);
  13. }
  14. void Filling (int a[], int s){
  15.     // заполнение массива
  16.     for(int i=0; i<s; i++){
  17.         cout<<"Введите элемент №"<<i+1<<" - ";
  18.         cin>>a[i];
  19.     }
  20. }
  21. void Sort_bubble (int a[], int s){
  22.     for(int i=0; i<s; i++){
  23.         for(int q=s-1; q>i; q--){
  24.             if(a[q-1]>a[q]){
  25.                 cout<<"Меняем местами "<<a[q]<<" и "<<a[q-1]<<"\n";
  26.                 int temp=a[q];
  27.                 a[q]=a[q-1];
  28.                 a[q-1]=temp;
  29.             }  
  30.         }
  31.     }
  32. }
  33. void Show (int a[], int s){
  34.     cout<<"\nОтсортированный массив:\n";
  35.     for(int i=0; i<s; i++)
  36.         cout<<a[i]<<"  ";
  37.     cout<<"\n";
  38. }

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

  1. #include - подключает библиотеку для работы с потоками ввода-вывода
  2. using namespace std; - позволяет использовать стандартное пространство имен std
  3. void Filling (int a[], int s); - объявляет функцию Filling, которая заполняет массив a значениями, считываемыми с помощью ввода с клавиатуры
  4. void Sort_bubble (int a[], int s); - объявляет функцию Sort_bubble, которая сортирует массив a методом пузырька
  5. void Show (int a[], int s); - объявляет функцию Show, которая выводит отсортированный массив на экран
  6. void main (){ - объявляет функцию main, которая является точкой входа в программу
  7. setlocale (LC_ALL, Rus); - устанавливает русскую локаль для корректного вывода кириллических символов
  8. const int s=5; - объявляет константу s, определяющую размер массива
  9. int a[s]; - объявляет одномерный массив a динамической длины, размер которого определяется константой s
  10. Filling (a,s); - вызывает функцию Filling для заполнения массива a
  11. Sort_bubble (a,s); - вызывает функцию Sort_bubble для сортировки массива a
  12. Show (a,s); - вызывает функцию Show для вывода отсортированного массива на экран
  13. for(int i=0; i<s; i++){ - начинает цикл for, выполняющийся s раз, где i - переменная-счетчик
  14. cout<<Введите элемент №<<i+1<<-; - выводит на экран приглашение для ввода элемента массива с указанием его номера
  15. cin>>a[i]; - считывает введенное значение и сохраняет его в элементе массива с индексом i
  16. for(int q=0; q<s; q++){ - начинает цикл for, выполняющийся s раз, где q - переменная-счетчик
  17. for(int q=s-1; q>i; q--){ - вложенный цикл for, выполняющийся s-1 раз, где q - переменная-счетчик, уменьшающаяся на единицу на каждой итерации внешнего цикла
  18. if(a[q-1]>a[q]){ - условие, если выполняется, то происходит перестановка элементов массива
  19. int temp=a[q]; - временная переменная для хранения элемента массива, который будет заменен
  20. a[q]=a[q-1]; - замена элементов массива
  21. a[q-1]=temp; - восстановление исходного значения элемента массива
  22. cout<<Меняем местами<<a[q]<<и<<a[q-1]<<\n; - вывод на экран информации о произведенной перестановке
  23. cout<<\nОтсортированный массив:\n; - вывод на экран приглашения для вывода отсортированного массива
  24. for(int i=0; i<s; i++) - начинает цикл for, выполняющийся s раз, где i - переменная-счетчик
  25. cout<<a[i]<< ; - вывод на экран значения элемента массива, отделенного пробелами от других значений
  26. cout<<\n; - завершает вывод на экран информации о массиве

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


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

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

6   голосов , оценка 4.333 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы