Dados exatas[TAM], humanas[TAM], bio[TAM];
int opcao, opcao1 = 0, i, menu;
int busca;
do {
printf("Escolha uma das opções: \n");
printf("1 - Inserir uma obra. \n");
printf("2 - Consultar uma obra. \n");
printf("3 - Sair. \n");
printf("\n\nOpção: ");
scanf("%d", &opcao);
system ("cls");
switch(opcao)
{
case 1:
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\n\nEscolha uma das opções: ");
scanf("%d", &opcao1);
system ("cls");
switch(opcao1) {
case 1:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Humanas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &humanas.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume: ");
gets (humanas.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor: ");
gets(humanas.autor);
fflush(stdin);
printf("\n\tInforme se o volume foi doado. (Sim / Não): ");
gets(humanas.doado);
fflush(stdin);
printf("\n\tDigite a editora: ");
scanf("%s", &humanas.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume: ");
scanf("%i", &humanas.paginas);
fflush(stdin);
system ("cls");
}
break;
case 2:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Exatas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &exatas.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume : ");
gets(exatas.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor volume: ");
gets(exatas.autor);
fflush(stdin);
printf("\n\tInforme se o volume foi doado. (1 = Sim / 2 = Não): ");
scanf("%i", &exatas.doado);
fflush(stdin);
printf("\n\tDigite a editora do volume : ");
gets(exatas.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume: ");
scanf("%i", &exatas.paginas);
fflush(stdin);
system ("cls");
}
break;
case 3:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Biomédicas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &bio.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume %d: ");
gets(bio.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor volume %d: ");
gets(bio.autor);
fflush(stdin);
printf("\n\tInforme se o volume %d foi doado. (1 = Sim / 2 = Não): ");
scanf("%i", &bio.doado);
fflush(stdin);
printf("\n\tDigite a editora do volume %d: ");
gets(bio.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume %d: ");
scanf("%i", &bio.paginas);
fflush(stdin);
system ("cls");
}
// Fim Case 2 (Adicionar Obra)
break;
}
}
switch(opcao == 2)
{
case 1:
system ("cls");
switch(opcao1) {
case 1:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == humanas.cod && opcao1 == 1){
printf("\t\tObra: Ciências Humanas.");
printf("\nCódigo da Catalogação: %i - Doado: %s", humanas.cod, &humanas.doado);
printf("\nNome da Obra: %s", &humanas.nome);
printf("\nNome do Autor: %s", &humanas.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &humanas.editora, humanas.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
break;
case 2:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == exatas.cod && opcao1 == 2){
printf("\t\tObra: Ciências Exatas.");
printf("\nCódigo da Catalogação: %i - Doado: %i", exatas.cod, exatas.doado);
printf("\nNome da Obra: %s", &exatas.nome);
printf("\nNome do Autor: %s", &exatas.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &exatas.editora, exatas.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
break;
case 3:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == bio.cod && opcao1 == 3){
printf("\t\tObra: Ciências Biomédicas.");
printf("\nCódigo da Catalogação: %i - Doado: %i", bio.cod, bio.doado);
printf("\nNome da Obra: %s", &bio.nome);
printf("\nNome do Autor: %s", &bio.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &bio.editora, bio.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
Pergunta
IagoMarques
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
#include <locale.h>
#define TAM 2
typedef struct sDados {
char autor[150], editora[150], nome[150], doado[5];
int paginas, cod;
} Dados;
int main(){
setlocale (LC_ALL, "Portuguese");
Dados exatas[TAM], humanas[TAM], bio[TAM];
int opcao, opcao1 = 0, i, menu;
int busca;
do {
printf("Escolha uma das opções: \n");
printf("1 - Inserir uma obra. \n");
printf("2 - Consultar uma obra. \n");
printf("3 - Sair. \n");
printf("\n\nOpção: ");
scanf("%d", &opcao);
system ("cls");
switch(opcao)
{
case 1:
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\n\nEscolha uma das opções: ");
scanf("%d", &opcao1);
system ("cls");
switch(opcao1) {
case 1:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Humanas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &humanas.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume: ");
gets (humanas.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor: ");
gets(humanas.autor);
fflush(stdin);
printf("\n\tInforme se o volume foi doado. (Sim / Não): ");
gets(humanas.doado);
fflush(stdin);
printf("\n\tDigite a editora: ");
scanf("%s", &humanas.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume: ");
scanf("%i", &humanas.paginas);
fflush(stdin);
system ("cls");
}
break;
case 2:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Exatas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &exatas.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume : ");
gets(exatas.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor volume: ");
gets(exatas.autor);
fflush(stdin);
printf("\n\tInforme se o volume foi doado. (1 = Sim / 2 = Não): ");
scanf("%i", &exatas.doado);
fflush(stdin);
printf("\n\tDigite a editora do volume : ");
gets(exatas.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume: ");
scanf("%i", &exatas.paginas);
fflush(stdin);
system ("cls");
}
break;
case 3:
for(i = 0; i < TAM; i++)
{
printf("\n\t\tObra: Ciencias Biomédicas\n" );
printf("\n\tDigite o código da obra: ");
scanf("%i", &bio.cod);
fflush(stdin);
printf("\n\tDigite o nome do volume %d: ");
gets(bio.nome);
fflush(stdin);
printf("\n\tDigite o nome do autor volume %d: ");
gets(bio.autor);
fflush(stdin);
printf("\n\tInforme se o volume %d foi doado. (1 = Sim / 2 = Não): ");
scanf("%i", &bio.doado);
fflush(stdin);
printf("\n\tDigite a editora do volume %d: ");
gets(bio.editora);
fflush(stdin);
printf("\n\tDigite a quantidade de páginas do volume %d: ");
scanf("%i", &bio.paginas);
fflush(stdin);
system ("cls");
}
// Fim Case 2 (Adicionar Obra)
break;
}
}
switch(opcao == 2)
{
case 1:
system ("cls");
switch(opcao1) {
case 1:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == humanas.cod && opcao1 == 1){
printf("\t\tObra: Ciências Humanas.");
printf("\nCódigo da Catalogação: %i - Doado: %s", humanas.cod, &humanas.doado);
printf("\nNome da Obra: %s", &humanas.nome);
printf("\nNome do Autor: %s", &humanas.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &humanas.editora, humanas.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
break;
case 2:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == exatas.cod && opcao1 == 2){
printf("\t\tObra: Ciências Exatas.");
printf("\nCódigo da Catalogação: %i - Doado: %i", exatas.cod, exatas.doado);
printf("\nNome da Obra: %s", &exatas.nome);
printf("\nNome do Autor: %s", &exatas.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &exatas.editora, exatas.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
break;
case 3:
for(int i=0; i < TAM ; i++){
printf("Código da Obra: ");
scanf ("%i", &busca);
printf("Opção 1 - Humanas.\nOpção 2 - Exatas.\nOpção 3 - Biomédicas\nEscolha uma das opções:");
scanf("%d", &opcao1);
system ("cls");
if(busca == bio.cod && opcao1 == 3){
printf("\t\tObra: Ciências Biomédicas.");
printf("\nCódigo da Catalogação: %i - Doado: %i", bio.cod, bio.doado);
printf("\nNome da Obra: %s", &bio.nome);
printf("\nNome do Autor: %s", &bio.autor);
printf("\nEditora: %s - Nº de Páginas: %i", &bio.editora, bio.paginas);
}
else
printf ("\nLivro não cadastrado!");
system ("cls");
}
break;
}
while(opcao != 3);
}
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.