-Fazer um programa que cria uma estrutura livro, que contém os elementos título, ano de edição, número de páginas e preço. Criar uma variável desta estrutura que é um vetor de elementos. Ler os valores para a estrutura e imprimir a média do número de páginas do livros. Além disso mostrar os dados do livro com maior preço e menor preço, inclusive se houver mais de um livro com o mesmo preço.
Tô iniciando agora em struct, e, dada a questão, tentei montar um programa que seguisse operando o que ela pede, mas por algum motivo que n consigo identificar, o programa só lê o título do primeiro livro. Estou usando o Dev C++, escrevendo em C, gostaria que alguém me ajudasse a identificar o problema (Irei publicar o código por completo para melhor visualização, pontuando o que fiz em cada pedaço).
#include<stdio.h>#define T 2int main (){struct dados {char titulo[71];int ano;int pag;float preco;};struct dados livro[T];// Declarando estrutura e variáveis.int i;float mediap =0.0;float maior =0.0, menor =9999999999999999.9;for(i =0; i < T; i++){// Entrada de dados.
printf ("\nLivro %d:\n", i +1);
printf ("\n\tInsira o titulo do livro: ");// JUSTO AQUI, RECEBO APENAS O PRIMEIRO TÍTULO.
fgets (livro[i].titulo,71, stdin);
printf ("\n\tInsira o ano de edicao: ");
scanf ("%d",&livro[i].ano);
printf ("\n\tInsira o numero de paginas: ");
scanf ("%d",&livro[i].pag);
printf ("\n\tInsira o preco no mercado: ");
scanf ("%f",&livro[i].preco);if(livro[i].preco < menor)
menor = livro[i].preco;if(livro[i].preco > maior)
maior = livro[i].preco;
mediap = mediap + livro[i].pag;}//system ("cls"); // Limpa a tela
printf ("\n\nA media do numero de paginas dos livros: %.2f\n",(float)mediap/T);// Saída de dados
printf ("\nO maior preco dentre os livros: %.2f\n", maior);
printf ("\nO menor preco dentre os livros: %.2f\n", menor);return0;}
Pergunta
Parazeit
-Fazer um programa que cria uma estrutura livro, que contém os elementos título, ano de edição, número de páginas e preço. Criar uma variável desta estrutura que é um vetor de elementos. Ler os valores para a estrutura e imprimir a média do número de páginas do livros. Além disso mostrar os dados do livro com maior preço e menor preço, inclusive se houver mais de um livro com o mesmo preço.
Tô iniciando agora em struct, e, dada a questão, tentei montar um programa que seguisse operando o que ela pede, mas por algum motivo que n consigo identificar, o programa só lê o título do primeiro livro. Estou usando o Dev C++, escrevendo em C, gostaria que alguém me ajudasse a identificar o problema (Irei publicar o código por completo para melhor visualização, pontuando o que fiz em cada pedaço).
Segue o programa que tentei fazer:
Editado por ParazeitLink para o comentário
Compartilhar em outros sites
2 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.