Pilha

569 palavras 3 páginas
#include
#include
#include
#define TRUE 1

struct data
{
int dia; int mes; int ano;
};
typedef struct data data;

struct aluno
{
int num; char nome[30]; data nasc; char sexo; data vest; struct aluno *prox;
};

typedef struct aluno aluno;

int tamanho; aluno *topo; aluno *fundo;

void Inicia_Pilha()
{
aluno *aux; aux = (aluno *)malloc(sizeof(aluno)); fundo = aux; fundo->prox = NULL; topo = fundo;
}

void Insert_Pilha()
{
system("cls"); aluno *aux; aux = (aluno *)malloc(sizeof(aluno)); aux->prox = topo; printf("Digite o numero de matricula do aluno: "); scanf("%d",&aux->num); fflush(stdin); printf("\nDigite o nome completo: "); gets(aux->nome); printf("\nDigite a data de nascimento no formato dd/mm/aaaa: "); scanf("%d/%d/%d",&aux->nasc.dia,&aux->nasc.mes,&aux->nasc.ano); fflush(stdin); while (TRUE) { printf("\nDigite o sexo (m para masculino e f para feminino): "); scanf("%c",&aux->sexo); if (aux->sexo == 'm' || aux->sexo == 'f') break; } printf("\nDigite a data do vestibular (formato dd/mm/aaaa): "); scanf("%d/%d/%d",&aux->vest.dia,&aux->vest.mes,&aux->vest.ano); topo=aux; tamanho++; printf("\n\n"); system("PAUSE");
}

void Busca_Pilha()
{
system("cls"); int flag = 0, tam = tamanho, val; aluno *aux; aux = topo; fflush(stdin); printf("Digite o numero de matricula a ser pesquisado: "); scanf("%d",&val); while (aux != NULL) { if (aux->num == val) { printf("\nAluno encontrado.\n\n"); printf("Matricula: %d\nNome: %s",aux->num,aux->nome); printf("\nData de nascimento: %d/%d/%d",aux->nasc.dia,aux->nasc.mes,aux->nasc.ano); if (aux->sexo == 'm') printf("\nSexo: Masculino"); else

Relacionados

  • Pilha
    1396 palavras | 6 páginas
  • O que é uma pilha?
    847 palavras | 4 páginas
  • pilhas
    1375 palavras | 6 páginas
  • Pilhas
    3436 palavras | 14 páginas
  • Pilhas
    843 palavras | 4 páginas
  • Pilha
    2314 palavras | 10 páginas
  • pilha
    1247 palavras | 5 páginas
  • pilhas
    1166 palavras | 5 páginas
  • Pilhas
    1972 palavras | 8 páginas
  • Pilhas
    2276 palavras | 10 páginas