Escolar Documentos
Profissional Documentos
Cultura Documentos
h>
#include <string.h>
struct livro
{
char titulo[60];
char autor[80];
char estilo[20];
int codigo, ano;
float preco;
};
int main()
{
struct livro *b;
int op, tam, codigo, ano;
char estilo, titulo, autor;
if (b==NULL)
{ printf("\n\nIMPOSSÃVEL ALOCAR MEMÓRIA.\n\n");
return 1;
}
do
{
printf("1 - Inserir livro \n\n 2- Listar livros\n\n 3-
Buscar por autor \n\n 4- Buscar por titulo \n\n 5- Buscar por
estilo \n\n 6 - Buscar por código \n\n 7 - Calcular média dos
preços \n\n 8 - Buscar por ano da publicação \n\n 9 - Sair\n\n
Opção:");
scanf("%d", &op);
switch(op)
{
case 1:
leitura(b,tam);
break;
case 2:
impressao(b,tam);
break;
case 3:
buscarAutor(b,autor,tam);
break;
case 4:
buscarTitulo(b,titulo,tam);
break;
case 5:
buscarEstilo(b,estilo,tam);
break;
case 6:
buscarCod(b,codigo, tam);
break;
case 7:
calculaMedia(b,tam);
break;
case 8:
buscarAno(b,ano,tam);
break;
case 9:
printf("Finalizar. \n");
break;
default:
printf("Opção Inválida\n");
}
}
while (op!=9);
for(i=0;i<tam;i++)
{ fgetc(stdin);
printf("\n");
b++;
}
}
for(i=0;i<tam;i++)
{
printf("%d\nTitulo: %s\n Autor: %s\n Estilo: %s\n Codigo:
%d\n Ano: %d\n Preco:%f\n\n", (b+i)->titulo, (b+i)->autor, (b+i)-
>estilo, (b+i)->codigo, (b+i)->ano, (b+i)->preco);
b++;
}
}
for(i=0;i<tam;i++)
{ if (a == (b+i)->autor)
{ printf("\n\nTitulo: %s\n", (b+i)->titulo);
printf("\n\nCódigo: %d\n", (b+i)->codigo);
printf("\n\nEstilo: %s\n", (b+i)->estilo);
printf("\n\nAno de publicação: %d\n", (b+i)->ano);
printf("\n\nPreço: %f\n", (b+i)->preco);
}
else
k++;
if (k == tam)
printf("\n\nAUTOR NAO ENCONTRADO\n\n");
}
}
for(i=0;i<tam;i++)
{ if (e == (b+i)->estilo)
{ printf("\n\nTitulo: %s\n", (b+i)->titulo);
printf("\n\nAutor: %s\n", (b+i)->autor);
printf("\n\nCódigo: %d\n", (b+i)->codigo);
printf("\n\nAno de publicação: %d\n", (b+i)->ano);
printf("\n\nPreço: %f\n", (b+i)->preco);
}
else
k++;
if (k == tam)
printf("\n\nESTILO NAO ENCONTRADO\n\n");
}
}
for(i=0;i<tam;i++)
{ if (c == (b+i)->codigo)
{ printf("\n\nTitulo: %s\n", (b+i)->titulo);
printf("\n\nAutor: %s\n", (b+i)->autor);
printf("\n\nEstilo: %s\n", (b+i)->estilo);
printf("\n\nAno de publicação: %d\n", (b+i)->ano);
printf("\n\nPreço: %f\n", (b+i)->preco);
}
else
k++;
if (k == tam)
printf("\n\nCODIGO NAO ENCONTRADO\n\n");
}
}
for(i=0;i<tam;i++)
soma = soma + (b+i)->preco;
media = soma/tam;
return (media);
}
for(i=0;i<tam;i++)
{ if (an == (b+i)->ano)
{ printf("\n\nTitulo: %s\n", (b+i)->titulo);
printf("\n\nAutor: %s\n", (b+i)->autor);
printf("\n\nEstilo: %s\n", (b+i)->estilo);
printf("\n\nCódigo: %d\n", (b+i)->codigo);
printf("\n\nPreço: %f\n", (b+i)->preco);
}
else
k++;
if (k == tam)
printf("\n\nCODIGO NAO ENCONTRADO\n\n");
}
}