Ir ao conteúdo
  • Cadastre-se

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


metal57

Posts recomendados

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.

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!