I dette eksemplet lærer du å sortere 5 strenger som er skrevet inn av brukeren i leksikografisk rekkefølge (ordbokrekkefølge).
For å forstå dette eksemplet, bør du ha kunnskap om følgende C-programmeringsemner:
- C Flerdimensjonale matriser
- C Programmeringsstrenger
- Strengmanipulasjoner i C-programmering ved bruk av biblioteksfunksjoner
Sorter strenger i ordbokrekkefølgen
#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; )
Produksjon
Skriv inn 5 ord: R programmering JavaScript Java C programmering C ++ programmering I leksikografisk rekkefølge: C programmering C ++ programmering Java JavaScript R programmering
For å løse dette programmet opprettes en todimensjonal streng med navnet str. Strengen kan inneholde maksimalt 5
strenger, og hver streng kan ha maksimalt antall 50
tegn (inkludert null
tegnet).
I programmet har vi brukt to biblioteksfunksjoner:
- strcmp () - for å sammenligne strenger
- strcpy () - for å kopiere strenger
Disse funksjonene brukes til å sammenligne strenger og sortere dem i riktig rekkefølge.