Pilha
Publicado por Leonardo Barrozo dos Santos 10/03/2003
[ Hits: 13.319 ]
Código fonte de um programa de pilha.
/* +-----------------------------------------------------------+ | Programador: Leonardo Barrozo dos Santos | | Descrição..: Programa que demonstra o funcionamente de | | ...........: uma pilha. | | Arquivo....: pilha.c | +-----------------------------------------------------------+ */ #include<stdio.h> #define MAX 10 //MAX = Quantidade de elementos máximos na pilha int topo=-1; //Indica o topo da pilha int pilha[MAX]; //Declaração da pilha void insere (void); //Função que insere itens na pilha void remover(void); //Função que remove itens da pilha void exibe (void); //Função que exibe os itens da pilha int main (void) { int op; for (;;) { system("clear"); //Limpa a tela, somente no Linux //--------------------------------- //MENU PRINCIPAL //--------------------------------- printf("\nMenu"); printf("\n\n1- Insere"); printf("\n2- Remover"); printf("\n3- Exibir"); printf("\n4- Sair"); printf("\n\nEntre a sua opção:"); //--------------------------------- scanf("%d",&op); switch(op) { case 1 : insere(); break; case 2 : remover(); break; case 3 : exibe(); break; case 4 : exit(0); default: printf("\nOpção Errada"); getchar(); break; } } } void insere (void) { int i; topo = topo + 1; if (topo == MAX) //Insere itens na pilha até que topo for diferente de MAX { printf("\nPilha Cheia"); topo = topo - 1; getchar(); } printf("Entre com o número (TOPO = %d): ",topo); scanf ("%d",&i); pilha[topo] = i; } void remover (void) { if (topo >= 0) { pilha[topo] = 0; topo = topo - 1; } else { printf("Pilha Vazia"); getchar(); } } void exibe (void) { int x; char s[80]; system("clear"); for (x=0;x<=topo;x++) printf("\n %d",pilha[x]); printf("\n (S)air"); scanf("%s",s); }
Passando uma matriz para funcao
Lista simplesmente encadeada com busca auto-organizada
Resolver problemas de Internet
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
Fez porcaria no teu repositório Git? Aprenda a restaurar uma versão anterior do seu código!
Restaurando Fontes de Download do Hydra no Linux
Atualizando "na marra" o YT-DLP quando começa a dar erro de downloads
Como instalar o WPS com interface e corretor ortográfico em PT-BR no Arch Linux
How to Choose a Motherboard? (0)
Atualizador de Programas do Zorin 17.3 não funciona [RESOLVIDO] (5)