Selles näites õpitakse sorteerima 5 stringi, mille kasutaja on sisestanud leksikograafilises järjekorras (sõnastiku järjekord).
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest C-programmeerimise teemadest:
- C Mitmemõõtmelised massiivid
- C Programmeerimisstringid
- Stringi manipulatsioonid C-programmeerimisel raamatukogu funktsioonide abil
Sordi stringid sõnastiku järjekorras
#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; )
Väljund
Sisestage 5 sõna: R programmeerimine JavaScripti Java programmeerimine C ++ programmeerimine Leksikograafilises järjekorras: C programmeerimine C ++ programmeerimine Java JavaScripti R programmeerimine
Selle programmi lahendamiseks luuakse kahemõõtmeline string nimega str. String mahutab maksimaalselt 5
stringe ja igas stringis võib olla maksimaalselt 50
märke (kaasa arvatud null
märk).
Programmis oleme kasutanud kahte raamatukogu funktsiooni:
- strcmp () - stringide võrdlemiseks
- strcpy () - stringide kopeerimiseks
Neid funktsioone kasutatakse stringide võrdlemiseks ja nende õiges järjestuses sortimiseks.