C-ohjelma elementtien lajittelemiseksi leksikografisessa järjestyksessä (sanakirjajärjestys)

Tässä esimerkissä opit lajittelemaan 5 käyttäjän kirjoittamaa merkkijonoa leksikografisessa järjestyksessä (sanakirjajärjestyksessä).

Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista C-ohjelmointiaiheista:

  • C Moniulotteiset taulukot
  • C Ohjelmointijonot
  • Merkkijonon manipulaatiot C-ohjelmoinnissa kirjastotoimintojen avulla

Lajittele merkkijonot sanakirjajärjestyksessä

 #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; )

Tuotos

 Kirjoita 5 sanaa: R-ohjelmointi JavaScript Java C-ohjelmointi C ++ -ohjelmointi Leksikografisessa järjestyksessä: C-ohjelmointi C ++ -ohjelmointi Java JavaScript R-ohjelmointi 

Tämän ohjelman ratkaisemiseksi luodaan kaksiulotteinen merkkijono nimeltä str. Merkkijono voi sisältää enintään 5merkkijonoja ja jokaisessa merkkijonossa voi olla enintään 50merkkejä (merkki mukaan lukien null).

Ohjelmassa olemme käyttäneet kahta kirjastotoimintoa:

  • strcmp () - vertaa merkkijonoja
  • strcpy () - kopioida merkkijonot

Näitä toimintoja käytetään merkkijonojen vertaamiseen ja lajitteluun oikeassa järjestyksessä.

Mielenkiintoisia artikkeleita...