Preciso de ajuda para fazer a seguinte implementação no programa:
1. Inserir produto na fila por ordem de chegada não permitindo códigos repetidos 2. Mostrar os produtos presentes na fila 3. Excluir um produto da fila mantendo-a ordenada por ordem de chegada 4. Pesquisar um produto na fila indicando qual a sua posição na fila ou informando que não está presente 5. Gravar a fila em disco com o nome produto.dat 6. Sair
Pergunta
bvianaro
Preciso de ajuda para fazer a seguinte implementação no programa:
1. Inserir produto na fila por ordem de chegada não permitindo códigos repetidos
2. Mostrar os produtos presentes na fila
3. Excluir um produto da fila mantendo-a ordenada por ordem de chegada
4. Pesquisar um produto na fila indicando qual a sua posição na fila ou informando que não está presente
5. Gravar a fila em disco com o nome produto.dat
6. Sair
O programa é esse:
struct matel
{
int codigo;
char descricao[40];
float custo;
struct matel *prox;
};
typedef struct matel MATEL;
MATEL *inicio, *fim;
int contador;
void mostra_lista();
int main()
{
int k,quant;
MATEL *p,*aux;
contador=0;
printf("\nQuantas pecas serao registradas? ");
scanf("%d",&quant);
while (quant < 1)
{
printf("\nInforme valor maior que zero ");
scanf("%d",&quant);
}
for(k=0;k<quant;k++)
{
aux=(MATEL *)malloc(sizeof(MATEL));
if(aux==NULL)
{
printf("\nImpossivel alocar espaco. Tecle algo");
getch();
return 0;
}
//Preeenche o vetor
printf("\nDigite codigo do material[%d] : ",k+1);
scanf("%d",&(*aux).codigo);
fflush(stdin);
printf("\nDigite descricao do material[%d] ",k+1);
gets((*aux).descricao);
printf("\nDigite custo do material[%d] ",k+1);
scanf("%f",&(*aux).custo);
if(contador==0)
{
inicio=fim=aux;
contador++;
aux->prox=NULL;
}
else
{
fim->prox=aux;
fim=aux;
aux->prox=NULL;
contador++;
}
}
mostra_lista();
printf("\n");
system("pause");
return 0;
}
void mostra_lista()
{
MATEL *aux;
aux=inicio;
while(aux)
{
printf("\nCodigo: %d",(*aux).codigo);
printf("\nDescricao: %s",(*aux).descricao);
printf("\nCusto: %.2f\n",(*aux).custo);
aux=aux->prox;
}
}
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.