Imagine que você foi contratado para desenvolver um sistema de gerenciamento de livros para uma pequena biblioteca. O sistema deve permitir que o bibliotecário cadastre, pesquise, ordene e gerencie o acervo de 20 livros. Esta tarefa exigirá a aplicação de diversos conceitos fundamentais da linguagem C.



Conceitos a serem aplicados:

Estruturas (Structs): Para armazenar os dados de cada livro (código, título, autor, área, ano e editora).

Constantes: Para definir o tamanho máximo do acervo de 20 livros.

Vetores: Para criar um acervo com capacidade para 20 livros, utilizando um vetor de structs.

Strings: Para manipular os campos de texto como título, autor, área e editora.

Funções: Para modularizar o código, separando a lógica de cada funcionalidade (cadastrar, imprimir, pesquisar, ordenar).

Estruturas de Repetição: Para percorrer o vetor de livros durante o cadastro, a impressão e a ordenação.

Estruturas Condicionais: Para criar um menu de opções e tomar decisões lógicas, como verificar se um livro foi encontrado na pesquisa.

Entrada e Saída de Dados: Para interagir com o usuário, recebendo dados do teclado e exibindo resultados na tela.

Funções Intrínsecas: Para operações de manipulação de strings (por exemplo, strcmp para comparar nomes) e outras utilidades.

Arquivos (Opcional – desafio extra): Para armazenar o acervo de forma persistente, lendo os dados de um arquivo ao iniciar o programa e salvando-os ao encerrar.



Dado o contexto, seguem as etapas que precisarão cumprir na atividade:

Faculdade: Unicesumar