Isadora06 1 Denunciar post Postado Dezembro 15, 2012 Questão: Uma determinada biblioteca possui obras de ciências exatas, humanas e biológicas, totalizando 1500 volumes, distribuídos em cada uma das áreas. O proprietário resolveu agrupar as informações de cada livro no seguinte registro: Código de catalogação Doação (S/N) Nome da obra Nome do autor Editora Área Construir um programa que: a) cadastre todos os volumes de cada uma das áreas em três vetores distintos; b)permita ao usuário fazer consulta as informações cadastradas fornecendo o código de catalogação e a área. Existindo tal livro as informação são exibidas, caso contrario enviar mensagem de aviso. A consulta se repete ate que o usuário digite código finalizador = -1. Não está rodando e o pior nem diz qual o erro. />/>/>/>/> O que eu fiz: #include <stdio.h> #include <stdlib.h> #include <locale.h> #define tam 3 struct obras_biblioteca{ int codigo; char titulo[30], autor[30],editora[10], doacao, area; }area_exatas[tam],area_humanas[tam],area_biologia[tam]; main (){ int i, resp=1,codigo, codigo_livro; char area, op; printf("\n\n MENU\n\n"); printf("1 - Para Cadastrar Livros.\n"); printf("2 - Para Pesquisar Livros.\n"); printf("Opção desejada:"); scanf("%c",&op); if(op=='1'){ for(i=0;i<tam;i++){ if(resp==1){ printf("Informe a área do livro:{H - A - B]\n"); scanf("%c",&area); if((area=='H')|| (area=='h')) { printf("Informe o código do livro:\n"); scanf("%d",&area_humanas[i].codigo); printf("Informe o título do livro:\n"); scanf("%s",&area_humanas[i].titulo); printf("Informe o nome do autor do livro:\n"); scanf("%s",&area_humanas[i].autor); printf("Informe a editora do livro:\n"); scanf("%s",&area_humanas[i].editora); printf("O livro está sendo doado?[s-N]\n"); scanf("%c",&area_humanas[i].doacao); } else if ((area=='E')|| (area=='e')) { printf("Informe o código do livro:\n"); scanf("%d",&area_exatas[i].codigo); printf("Informe o título do livro:\n"); scanf("%s",&area_exatas[i].titulo); printf("Informe o nome do autor do livro:\n"); scanf("%s",&area_exatas[i].autor); printf("Informe a editora do livro:\n"); scanf("%s",&area_exatas[i].editora); printf("O livro está sendo doado?[s-N]\n"); scanf("%c",&area_exatas[i].doacao); } else{ printf("Informe o código do livro:\n"); scanf("%d",&area_biologia[i].codigo); printf("Informe o título do livro:\n"); scanf("%s",&area_biologia[i].titulo); printf("Informe o nome do autor do livro:\n"); scanf("%s",&area_biologia[i].autor); printf("Informe a editora do livro:\n"); scanf("%s",&area_biologia[i].editora); printf("O livro está sendo doado?[s-N]\n"); scanf("%c",&area_biologia[i].doacao); } Printf("Deseja cadastrar mais livro? [sIM = 1; NÃO = 0]\n"); scanf("%c",&resp); } } } else if(op=='2'){ printf("Informe o código do livro:"); scanf("%d",&codigo_livro); printf("Informe a área do livro [H - E - B]:"); scanf("%c",&area); if(area=='E'){ for(i=0;i<tam;i++){ if(codigo_livro==area_exatas[i].codigo){ printf("Título do livro: %s",area_exatas[i].titulo); printf("Autor do livro: %s",area_exatas[i].autor); printf("Editora do livro: %s",area_exatas[i].editora); printf("livro doado: %c",area_exatas[i].doacao); } } } else if(area=='B'){ for(i=0;i<tam;i++){ if(codigo_livro==area_biologia[i].codigo){ printf("Título do livro: %s",area_biologia[i].titulo); printf("Autor do livro: %s",area_biologia[i].autor); printf("Editora do livro: %s",area_biologia[i].editora); printf("livro doado: %c",area_biologia[i].doacao); } } } else{ for(i=0;i<tam;i++){ if(codigo_livro==area_humanas[i].codigo){ printf("Título do livro: %s",area_humanas[i].titulo); printf("Autor do livro: %s",area_humanas[i].autor); printf("Editora do livro: %s",area_humanas[i].editora); printf("livro doado: %c",area_humanas[i].doacao); } } } } system("pause"); } Agradeço desde já! O erro estava na linha 100 Printf("Deseja cadastrar mais livro? [sIM = 1; NÃO = 0]\n"); sem querer coloquei em maiusculo! Compartilhar este post Link para o post Compartilhar em outros sites
ScreenBlack 13 Denunciar post Postado Fevereiro 26, 2013 Código C é sensitive case, ou seja, tem que respeitar letras maiúsculas e minúsculas. Troque "Printf" por "printf". Compartilhar este post Link para o post Compartilhar em outros sites