Lista encadeada c

778 palavras 4 páginas
#include
#include
#include
#include

struct Cad_livro
{
char titulo[30]; char autor[20]; int pg; int ano; char emp; // S- sim N- nao struct Cad_livro* prox;
};

typedef struct Cad_livro Lista;

/* funcao de inicialização: retorna uma lista vazia */
Lista *inicializa (void)
{
return (NULL);
}

/*insercao no inicio: retorna a lista atualizada */
Lista *insere (Lista *l, char titulom[30], char autorm[20], int pgm, int anom, char empm)
{
Lista* novo= (Lista*) malloc (sizeof(Lista)); strcpy(novo->titulo,titulom); strcpy(novo->autor,autorm); novo->ano=anom; novo->pg=pgm; novo->emp='N'; novo->prox=l; return(novo);
}

/*Função Disponivel */ void listaDisponiveis(Lista* l)
{
Lista *p; for (p = l; p != NULL; p = p->prox) { if(p->emp == 'N' || p->emp == 'n') { printf("Titulo do livro: %s\n", p->titulo); printf("Autor: %s\n", p->autor); printf("Ano de edicao: %d\n", p->ano); printf("Numero de paginas: %d\n", p->pg); printf("Emprestado: %c\n\n", p->emp); } }
}

//*Função Emprestar */ void listaEmprestados (Lista* l)
{
Lista *p; for (p = l; p != NULL; p = p->prox) { if(p->emp == 'S' || p->emp == 's') { printf("Titulo do livro: %s\n", p->titulo); printf("Autor: %s\n", p->autor); printf("Ano de edicao: %d\n", p->ano); printf("Numero de paginas: %d\n", p->pg); printf("Emprestado: %c\n\n", p->emp); } }
}

/*Função Busca */

Lista *buscaTitulo (Lista *l, char titulobusc[30])
{
Lista *p; for(p=l; p!= NULL; p=p->prox) if (strcmp(p->titulo, titulobusc)==0) return (p); return (NULL);
}

Lista *buscaAutor (Lista *l, char autorbusc[30])
{
Lista *p; for(p=l; p != NULL; p=p->prox) if (strcmp(p->autor, autorbusc)==0) return (p); return (NULL);
}

Relacionados

  • Lista encadeada c
    637 palavras | 3 páginas
  • Lista encadeada em C
    1396 palavras | 6 páginas
  • Lista encadeada em c -
    796 palavras | 4 páginas
  • Listas Duplamente Encadeadas C++
    492 palavras | 2 páginas
  • Lista encadeada implementada em c
    627 palavras | 3 páginas
  • Lle - lista linear encadeada em c
    481 palavras | 2 páginas
  • Código em Linguagem C para uma lista duplamente encadeada
    814 palavras | 4 páginas
  • Algorítmo de lista encadeada simples linguagem c
    564 palavras | 3 páginas
  • Código de uma agenda usando lista simplesmente encadeada em linguagem c
    527 palavras | 3 páginas
  • Lista encadeada
    2771 palavras | 12 páginas