Untitled
unknown
c_cpp
2 years ago
4.5 kB
3
Indexable
#ifndef LISTA_HEADER #define LISTA_HEADER #include <stdio.h> #include <stdlib.h> typedef struct{ char nome[51]; int codigo; float valor; int qtd; double peso; char descricao[151]; } TProduto; typedef struct celula{ TProduto item; struct celula* prox; } TCelula; typedef struct{ TCelula* frente; TCelula* tras; int tamanho; } TFila; void FFVazia(TFila *Fila); int Vazia(TFila Fila; void Enfileirar(TProduto x,TFila *Fila; void Desenfileirar(TFila *Fila, TProduto *Item); void LerProduto(TProduto *x); void ImprimirProduto(Tproduto x); void ImprimirFila(TFila *Fila); void PesquisarFila(TFila *Fila, TProduto *Item) # endif # ifndef INTERFACE_H_INCLUDED # define INTERFACE_H_INCLUDED #include <stdio.h> #include <stdlib.h> #include "fila.h" void MSG_MENU(); // MENSAGEM PARA EXIBIR O MENU PRINCIPAL void MENU(TFila *Fila); // MÓDULO DE MENU # endif #include <stdio.h> #include <stdlib.h> #include "interface.h" void MSG_MENU( ) { system("clear"); printf("\n\n\t>>>>>>>>>>>>>>>>>>>>>>> OPCOES DE MENU <<<<<<<<<<<<<<<<<<<<<<<<"); printf("\n\n\t1. INSERIR"); printf(" \n\t2. PESQUISAR"); printf(" \n\t3. EXCLUIR"); printf(" \n\t4. IMPRIMIR"); printf(" \n\t5. SAIR"); } void MENU(TFila *Fila){ TProduto produto; int opcao=0; int i; do { MSG_MENU(); printf("\n\nDigite uma opcao: "); fflush(stdin); scanf("%d", &opcao); switch(opcao) { case 1: Ler(&produto); Enfileirar(produto, Fila); system("PAUSE"); break; case 2: Desenfileirar(Fila, &produto); system("PAUSE"); break; case 3: ImprimirFila(*Fila); break; case 4: /** Código para opção de menu Imprimir */ break; case 5: system("clear"); printf("\n\n\n\t >>>>>> MSG: Saindo do MODULO...!!! <<<<<<"); system("PAUSE"); break; default: system("clear"); printf("\n\n\n\t >>>>>> MSG: Digite uma opcao valida!!! <<<<<<"); system("PAUSE"); } // fim do bloco switch } while(opcao != 5); } #include <stdio.h> #include <stdlib.h> #include <string> #include "fila.h" void FFVazia(TFila *Fila){ Fila -> frente = (TCelula *) malloc(sizeof(TCelula)); Fila -> tras = Lista -> frente; Fila -> frente -> prox = NULL; Fila -> tamanho = 0; } int Vazia(TFila Fila){ return (Fila.frente == Fila.tras); } void Enfileirar(TProduto x,TFila *Fila){ Fila->tras->prox = (TCelula*) malloc(sizeof(TCelula)); Fila->tras = Fila->tras->prox; Fila->tras->item = x; Fila->tras->prox = NULL; Fila->tamanho++; } void Desenfileirar(TFila *Fila, TProduto *Item){ TCelula* aux; if(!Vazia(*Fila)){ aux = Fila->frente->prox; Fila->frente->prox = aux->prox; *Item = aux->item; free(aux); } if(Fila->frente->prox == NULL){ Fila->tras = Fila->frente; } Fila->tamanho--; } void LerProduto(TProduto *x){ printf("Digite o nome do produto: "); fflush(stdin); fgets(x->nome,51,stdin); printf("Digite o codigo do produto: "); fflush(stdin); scanf("%d",&x->codigo); printf("Digite o preco do produto: "); fflush(stdin); scanf("%f",&x->preco); printf("Digite o peso do produto: "); fflush(stdin); scanf("%f",&x->peso); printf("Digite o descricao do produto: "); fflush(stdin); fgets(x->descricao,151,stdin); } void ImprimirProduto(Tproduto x){ printf("Nome: %s", x.nome); printf("Codigo: %d", x.codigo); printf("Preço: %f", x.preco); printf("Peso: %f", x.peso); printf("Descricao: %s", x.descricao); } void ImprimirFila(TFila *Fila){ TProduto *x; int i; for(i = 0; i < Fila->tamanho; i++){ ImprimirProduto(x); } } void PesquisarFila(TFila *Fila, TProduto *Item){ } #include <stdio.h> #include <stdlib.h> #include <fila.h> int main() { TFila Fila; FFVazia(&Fila); MENU(&Fila); }
Editor is loading...