In dit voorbeeld leert u 5 strings die door de gebruiker zijn ingevoerd in de lexicografische volgorde (woordenboekvolgorde) te sorteren.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende C-programmeeronderwerpen:
- C Multidimensionale arrays
- C Strings programmeren
- Stringmanipulaties bij C-programmering met behulp van bibliotheekfuncties
Sorteer strings in de woordenboekvolgorde
#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; )
Uitvoer
Voer 5 woorden in: R programmeren JavaScript Java C programmeren C ++ programmeren In de lexicografische volgorde: C programmeren C ++ programmeren Java JavaScript R programmeren
Om dit programma op te lossen, wordt een tweedimensionale string met de naam str gemaakt. De string kan maximaal 5
strings bevatten en elke string kan maximaal 50
karakters bevatten (inclusief het null
karakter).
In het programma hebben we twee bibliotheekfuncties gebruikt:
- strcmp () - om strings te vergelijken
- strcpy () - om strings te kopiëren
Deze functies worden gebruikt om strings te vergelijken en in de juiste volgorde te sorteren.