Pilha
Publicado por Leonardo Barrozo dos Santos 10/03/2003
[ Hits: 13.105 ]
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); }
Raiz cúbica pelo método de bissecção
Retorna o tempo ocioso em uma sessão do X
Agora temos uma assistente virtual no fórum!!! (247)
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
Reset do linux sem perder dual boot (0)
Lançado Ubuntu 24.04 Final (6)
redirecionando saida de comando touch para o AWK[AJUDA] (2)