Ir ao conteúdo
  • Cadastre-se
metal57

Pilha em C - Sem alocação dinâmica

Recommended Posts

Bom dia senhores,estou aprendendo estrutura de dados na faculdade pra ser mais exato pilha em C só que não estamos utilizando alocação dinâmica e definimos que a pilha tem um topo que é int e um tamanho fixo que é o vetor,esta é a nossa pilha:

Eu preciso de ajuda pra entender e criar estas funções:

1->Imprimir os elementos de uma pilha -> passagem da pilha usando

ponteiro

2->Copiar os elementos de uma pilha para outra.

3->Verifique se duas pilhas são iguais.

4->Inverte os elementos de uma pilha

5->Consultar se um determinado elemento esta na pilha.

6->Remover todas as ocorrências de um determinado elemento

de uma pilha

Segue o código:

#include <stdio.h>

#include <stdlib.h>

#define MAX 100

typedef struct cpi

{

int vetor[MAX];

int topo;

}pilha;

//Inicializa uma pilha como vazia

void inicializa_pilha(pilha *p)

{

p->topo=0;

}

int pilha_vazia (pilha p)

{

if(p.topo==0)

return 1;

else

return 0;

}

int pilha_cheia (pilha p)

{

return p.topo==MAX;

}

int consultar_topo_pilha (pilha p)

{

if(pilha_vazia(p) == 0)

return p.vetor[p.topo -1];

else

return 0;

}

int empilhar_pilha (pilha *p, int num)

{

if(pilha_cheia(*p)==1)

return 0;

p->vetor[p->topo]=num;

(p->topo)++;

return 1;

}

int desempilhar_pilha(pilha *p)

{

if(pilha_vazia(*p)==1)

{

return 0;

}

(p->topo)--;

return 1;

}

int main()

{

pilha p;

inicializa_pilha(&p);

empilhar_pilha(&p,200);

empilhar_pilha(&p,300);

empilhar_pilha(&p,400);

while(!pilha_vazia(p))

{

printf("Topo:%d\n",consultar_topo_pilha(p));

desempilhar_pilha(&p);

}

system("PAUSE");

return 0;

}

Conto com a ajuda de vocês.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×