Š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ā 5
virknes, un katrā virknē var būt ne vairāk kā 50
rakstzīmes (ieskaitot null
rakstzī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ā.