Програма С для сортування елементів у лексикографічному порядку (словниковий порядок)

У цьому прикладі ви навчитеся сортувати 5 рядків, введених користувачем у лексикографічному порядку (словниковий порядок).

Щоб зрозуміти цей приклад, ви повинні знати такі теми програмування на С:

  • C Багатовимірні масиви
  • C Програмування рядків
  • Струнні маніпуляції в програмуванні на C із використанням бібліотечних функцій

Сортування рядків у порядку словника

 #include #include int main() ( char str(5)(50), temp(50); printf("Enter 5 words: "); // Getting strings input for (int i = 0; i < 5; ++i) ( fgets(str(i), sizeof(str(i)), stdin); ) // storing strings in the lexicographical order for (int i = 0; i < 5; ++i) ( for (int j = i + 1; j 0) ( strcpy(temp, str(i)); strcpy(str(i), str(j)); strcpy(str(j), temp); ) ) ) printf("In the lexicographical order: "); for (int i = 0; i < 5; ++i) ( fputs(str(i), stdout); ) return 0; )

Вихідні дані

 Введіть 5 слів: R програмування JavaScript Java програмування C ++ програмування C ++ У лексикографічному порядку: програмування C програмування C ++ Java JavaScript програмування R 

Для вирішення цієї програми створюється двовимірний рядок з назвою str. Рядок може містити максимум 5рядків, і кожен рядок може містити максимум 50символів (включаючи nullсимвол).

У програмі ми використовували дві функції бібліотеки:

  • strcmp () - для порівняння рядків
  • strcpy () - для копіювання рядків

Ці функції використовуються для порівняння рядків та сортування їх у правильному порядку.

Цікаві статті...