Problemas no gcc. [RESOLVIDO]

1. Problemas no gcc. [RESOLVIDO]

Leonam Gama da Silva
leonamtotal90

(usa Ubuntu)

Enviado em 08/12/2009 - 11:06h

Pessoal eu tenho o seguinte codigo que e uma lista encadeada mas nas funcoes de insercao o programa simplesmente apaga a linha onde ele diz "Novo elemento?" mas se digitar rapido ele aceita o nome sabe. nao sei pq isso acontece
/* os sleep aqui no codigo foi devido a falta de funcoes como getche() no gcc e getchar() as vezes nao segura o termino da funcao.

/*Programa principal*/

main()

{

struct reg *inicio;

char op;

inicio=initlista();

for(;;)

{

printf("Escolha uma opcao:\n(A)dicionar elemento no final\n(I)nserir elemento no Inicio\n");

printf("(E)xibe Lista\ne(X)cluir elemento\n(S)air\n");

op=getchar();
switch (toupper(op))

{

case 'A':{inserefinal(&inicio);break;}

case 'I':{inserenoinicio(&inicio);break;}

case 'E':{exibelista(&inicio);break;}

case 'X':{removeelemento(&inicio);break;}

case 'S':{desaloca(&inicio);exit(0);}

default: {printf("\aEntrada invalida!");system("clear");}

}

system("clear");

}



}

void inserenoinicio(struct reg **raiz)

{

struct reg *novono;



if(*raiz==NULL)

{novono=(struct reg*) malloc(sizeof(struct reg));

printf("\n\nNovo elemento:");

fflush(stdin);
gets(novono->nome);

*raiz=novono;

novono->prox=NULL;}

else

{novono=(struct reg*)malloc(sizeof(struct reg));

printf("\n\nNovo elemento:");

fflush(stdin);
gets(novono->nome);

novono->prox=*raiz;

*raiz=novono;}

sleep(2);


}



void inserefinal(struct reg **raiz)

{

struct reg *pcorre,*novono;

if(*raiz==NULL)

{novono=(struct reg*)malloc(sizeof(struct reg));

printf("\n\nNovo elemento:");

fflush(stdin);
gets(novono->nome);

*raiz=novono;

novono->prox=NULL;
}

else

{
pcorre=*raiz;

while(pcorre->prox!=NULL) pcorre=pcorre->prox;

novono=(struct reg*)malloc(sizeof(struct reg));

printf("\n\nNovo elemento:");

fflush(stdin);
gets(novono->nome);

pcorre->prox=novono;

novono->prox=NULL;
}

sleep(2);
}


  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts