Pilha Encadeada
Publicado por Ricardo Rodrigues Lucca 02/07/2003
[ Hits: 23.049 ]
Homepage: http://aventurasdeumdevop.blogspot.com.br/
Um exemplo de pilha encadeada.
// Programador: Ricardo Lucca #include "tela.h" //Declarado para se ter clrscr() e a stdio.h #include <stdlib.h> //uso para malloc #define dgetchar() getchar();getchar(); struct nodo { int elem; struct nodo *prox; } *topo, *aux; bool vazio(struct nodo *campo) { if ( campo == NULL ) return true; else return false; } void insere(void) { int x; printf("\nEntre com o numero a inserir: "); scanf(" %i", &x); aux=(struct nodo *) malloc(sizeof(aux)); aux->elem=x; aux->prox=topo; topo=aux; printf("\nElemento inserido!"); dgetchar(); } void removr(void) { if (vazio(topo)) { aux=topo; topo=topo->prox; free(aux); printf("\nRemovido com sucesso!"); dgetchar(); } } void listar(void)//faz uma busca como c fosse um vetor { if (!vazio(topo)) ; else { aux=topo; for (;(topo->prox)!=NULL;topo=topo->prox) printf("%i\n",topo->elem); printf("%i",topo->elem); printf("\nTecle algo..."); dgetchar(); topo=aux; } } int main(void) { char op; int sair=0; topo=NULL; for (;sair==0;) { clrscr(); printf("1 -> Insere na pilha\n2 -> Remove da pilha\n"); printf("3 -> Listar pilha\n4 -> Sair da pilha\n"); printf("\nDigite uma opção: "); scanf(" %c", &op); switch (op) { case '1': insere(); break; case '2': removr(); break; case '3': listar(); break; case '4': sair=1; break; default: { printf("Opção invalida! \n"); getchar(); getchar(); break; } } } return 0; }
Raiz cúbica pelo método de bissecção
Desenhando uma superfície Bézier
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
ASRock H310CM-HG4 vs Linux (10)
erro ao clonar repo github (8)
iso de sistema 32 bit em atividade (1)