В заданном массиве упорядочить строки в алфавитном порядке - C (СИ)

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

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

Нужна вводить матриц char names[M][N] N,M константы(define) , Нужна писать в нем M имя и программа будет сортиравать имя по алфавитный форме , нужно использовать пузырьковый алгоритм и функции gets(), puts(), strcmp(), strcpy()

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

textual
Листинг программы
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <stdbool.h>
  4.  
  5. #define M 4
  6. #define N 20
  7.  
  8.  
  9. int main(void)
  10. {
  11.     char names[M][N];
  12.     for (int i = 0; i < M; i++)
  13.         gets(names[i]); // без проверки на переполнение
  14.  
  15.      for (int i = 0; i < M-1; i++) {
  16.         bool swapped = false;
  17.         for (int j = 0; j < M-i-1; j++) {
  18.             if (strcmp(names[j], names[j+1]) > 0) {
  19.                     char tmp[N];
  20.                     strcpy(tmp, names[j]);
  21.                     strcpy(names[j], names[j+1]);
  22.                     strcpy(names[j+1], tmp);
  23.                     swapped = true;
  24.             }
  25.         }
  26.          
  27.         if(!swapped)
  28.             break;
  29.     }
  30.     puts("after sort:");
  31.     for (int i = 0; i < M; i++)
  32.         puts(names[i]);
  33.     return 0;
  34. }

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


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

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

12   голосов , оценка 3.583 из 5

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

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

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