Programa C para classificar os elementos em ordem lexicográfica (ordem do dicionário)

Neste exemplo, você aprenderá a classificar 5 strings inseridas pelo usuário na ordem lexicográfica (ordem do dicionário).

Para entender este exemplo, você deve ter conhecimento dos seguintes tópicos de programação C:

  • Arrays C Multidimensional
  • Strings de programação C
  • Manipulações de string em programação C usando funções de biblioteca

Classifique as strings na ordem do dicionário

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

Resultado

 Digite 5 palavras: Programação em R JavaScript Java C Programação em C ++ Na ordem lexicográfica: Programação em C Programação em C ++ Programação em Java JavaScript R 

Para resolver este programa, uma string bidimensional chamada str é criada. A string pode conter no máximo 5strings e cada string pode ter no máximo 50caracteres (incluindo o nullcaractere).

No programa, usamos duas funções de biblioteca:

  • strcmp () - para comparar strings
  • strcpy () - para copiar strings

Essas funções são usadas para comparar strings e classificá-las na ordem correta.

Artigos interessantes...