TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

A Pilha Estática

Por:   •  14/5/2021  •  Trabalho acadêmico  •  530 Palavras (3 Páginas)  •  90 Visualizações

Página 1 de 3

#include <stdio.h>

#include <string.h>

#define TAMANHO_MAXIMO 10

typedef struct{

char titulo [50];

int valor;

float peso;

}DOCUMENTO;

typedef struct{

DOCUMENTO doc[TAMANHO_MAXIMO];

DOCUMENTO* topo;

}PILHA;

void inicializarPilha(PILHA* pilha);

void limpaPilha(PILHA* pilha);

void imprimirPilha(PILHA* pilha);

int push(PILHA* pilha, DOCUMENTO doc);

void pop(PILHA* pilha);

int length(PILHA* pilha);

int main() {

PILHA minhaPilha;

inicializarPilha(&minhaPilha);

DOCUMENTO R1;

strcpy (R1.titulo, "Text1");

R1.valor = 5;

R1.peso = 3.5;

DOCUMENTO R2;

strcpy (R2.titulo, "Text2");

R2.valor = 8;

R2.peso = 4.9;

DOCUMENTO R3;

strcpy (R3.titulo, "Text3");

R3.valor = 9;

R3.peso = 99.99;

push(&minhaPilha, R1);

push(&minhaPilha, R2);

push(&minhaPilha, R3);

imprimirPilha(&minhaPilha);

pop(&minhaPilha);

imprimirPilha(&minhaPilha);

limpaPilha(&minhaPilha);

imprimirPilha(&minhaPilha);

}

void pop(PILHA* pilha){

if (length(pilha)>0){

pilha ->topo -= 1;

}

}

int push(PILHA* pilha, DOCUMENTO doc){

if(length(pilha) < TAMANHO_MAXIMO){

pilha-> doc[length(pilha)] = doc;

...

Baixar como (para membros premium)  txt (2.3 Kb)   pdf (41.2 Kb)   docx (8.5 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com