Gere a seguinte lista circular

1. Gere a seguinte lista circular

amanda
mandinhat

(usa Outra)

Enviado em 02/11/2016 - 11:04h

Bom dia,

preciso de ajuda

Gere a seguinte lista circular:

y->t->r->e->w->q-> aponta de novo pra y

Remova os itens da lista (remover sempre o primeiro item) e os empilhe em uma pilha.

Desempilhe os itens, exibindo-os na tela.

A pimeira parte da lista circular eu consegui fazer agora preciso de ajuda pra fazer a segunda parte de remover e empilhar

#include <stdlib.h>
#include <stdio.h>

struct item{
char letra;
item *proximo;
};
/***********************************
*cria uma fila de char, ele vai retorar
*a fila que criou.
*********************************************/
item *criarFila(char letra){
item *fila=(item*) malloc(sizeof(item));
fila->letra=letra;
fila->proximo=fila; //aponta para si proprio.
return fila;
}
//retorna o fim da fila.
item *inserirItemNaFila(char letra, item *fila){

item *fimAtual=fila;
item *novoFim=(item*) malloc(sizeof(item));
novoFim->letra=letra;
novoFim->proximo=fimAtual->proximo;
fimAtual->proximo=novoFim;

return fimAtual;
}
/**********************************************
*Vai imprimir um loop inifinto da fila, mostrando
*que a fila é circular
***********************************************/
void imprimir(item *filaInicio, item *filaFim){
item *ponteiro=filaInicio;
while(ponteiro!=NULL){
printf("%c ", ponteiro->letra);
ponteiro=ponteiro->proximo;
}
}



int main(){
item *inicioFila=criarFila('y');
item *fimFila=inserirItemNaFila('b',inicioFila);

printf("%c \n", fimFila->letra);

fimFila=inserirItemNaFila('t',fimFila->proximo);
printf("%c \n", fimFila->letra);
fimFila=inserirItemNaFila('r',fimFila->proximo);
printf("%c \n", fimFila->letra);
fimFila=inserirItemNaFila('e',fimFila->proximo);
printf("%c \n", fimFila->letra);
fimFila=inserirItemNaFila('w',fimFila->proximo);
printf("%c \n", fimFila->letra);
fimFila=inserirItemNaFila('q',fimFila->proximo);
printf("%c \n", fimFila->letra);
printf("%c %c\n", inicioFila->letra,fimFila->letra);
imprimir(inicioFila, fimFila);
}





  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts