C programma elementu šķirošanai leksikogrāfiskā secībā (vārdnīcu secība)

Šajā piemērā jūs iemācīsities kārtot 5 lietotāja ievadītās virknes leksikogrāfiskajā secībā (vārdnīcas secībā).

Lai saprastu šo piemēru, jums vajadzētu būt zināšanām par šādām C programmēšanas tēmām:

  • C Daudzdimensionāli masīvi
  • C programmēšanas virknes
  • Stīgu manipulācijas C programmēšanā, izmantojot bibliotēkas funkcijas

Kārtojiet virknes vārdnīcas secībā

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

Rezultāts

 Ievadiet 5 vārdus: R programmēšana Java Java C programmēšana C ++ programmēšana Leksikogrāfiskā secībā: C programmēšana C ++ programmēšana Java JavaScript R programmēšana 

Lai atrisinātu šo programmu, tiek izveidota divdimensiju virkne ar nosaukumu str. Virknē var būt ne vairāk kā 5virknes, un katrā virknē var būt ne vairāk kā 50rakstzīmes (ieskaitot nullrakstzīmi).

Programmā mēs esam izmantojuši divas bibliotēkas funkcijas:

  • strcmp () - lai salīdzinātu virknes
  • strcpy () - kopēt virknes

Šīs funkcijas tiek izmantotas, lai salīdzinātu virknes un kārtotu tās pareizajā secībā.

Interesanti raksti...