

MAPA - ESOFT - LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO - 54_2025

MAPA - ESOFT - LINGUAGEM E TÉCNICAS DE PROGRAMAÇÃO - 54_2025
Sistema de Gerenciamento de Biblioteca em Linguagem C
Conforme apresentado na disciplina, a linguagem C oferece recursos fundamentais para o desenvolvimento de sistemas robustos através de estruturas de dados, funções, manipulação de arquivos e controle de fluxo. A modularização através de funções e o uso adequado de estruturas de dados são essenciais para criar programas organizados e eficientes.
Como parte do seu aprendizado prático, você deverá desenvolver um Sistema de Gerenciamento de Biblioteca completo em linguagem C, aplicando todos os conceitos estudados nas unidades da disciplina.
Descrição do Sistema:
O sistema deverá gerenciar o acervo de uma biblioteca, incluindo cadastro de livros, usuários, empréstimos e devoluções. O programa deve ser totalmente funcional e demonstrar domínio dos conceitos estudados.
Requisitos Funcionais:
- Cadastro de Livros:
- Código do livro (inteiro)
- Título (string até 100 caracteres)
- Autor (string até 80 caracteres)
- Editora (string até 60 caracteres)
- Ano de publicação (inteiro)
- Número de exemplares disponíveis (inteiro)
- Status (disponível/emprestado)
- Cadastro de Usuários:
- Matrícula (inteiro)
- Nome completo (string até 100 caracteres)
- Curso (string até 50 caracteres)
- Telefone (string até 15 caracteres)
- Data de cadastro (dia, mês, ano)
- Sistema de Empréstimos:
- Código do empréstimo (inteiro)
- Matrícula do usuário
- Código do livro
- Data do empréstimo (dia, mês, ano)
- Data prevista de devolução (7 dias após empréstimo)
- Status (ativo/devolvido)
Requisitos Técnicos:
Parte 1 - Estruturas de Dados (25 pontos):
- Definir structs apropriadas para Livro, Usuario e Emprestimo
- Utilizar vetores de structs para armazenar os dados
- Implementar funções de inicialização das estruturas
Parte 2 - Sistema de Menus e Controle de Fluxo (20 pontos):
- Menu principal com todas as opções do sistema
- Submenus organizados por funcionalidade
- Controle de fluxo utilizando estruturas condicionais e de repetição apropriadas
- Validação de entrada de dados
Parte 3 - Funções Modulares (25 pontos):
- Função para cadastrar livros
- Função para cadastrar usuários
- Função para realizar empréstimo
- Função para realizar devolução
- Função para pesquisar livros (por código, título ou autor)
- Função para pesquisar usuários (por matrícula ou nome)
- Função para listar empréstimos ativos
- Todas as funções devem utilizar passagem de parâmetros adequada
Parte 4 - Manipulação de Arquivos (20 pontos):
- Salvar dados de livros em arquivo "livros.txt"
- Salvar dados de usuários em arquivo "usuarios.txt"
- Salvar dados de empréstimos em arquivo "emprestimos.txt"
- Carregar dados dos arquivos na inicialização do programa
- Implementar backup automático dos dados
Parte 5 - Funcionalidades Avançadas (10 pontos):
- Relatório de livros mais emprestados
- Relatório de usuários com empréstimos em atraso
- Função de busca avançada com múltiplos critérios
- Sistema de renovação de empréstimos
Entregáveis:
- Código-fonte completo comentado e organizado
- Manual do usuário explicando como utilizar cada funcionalidade

