Logo Hardware.com.br
Tung
Tung Membro Senior Registrado
305 Mensagens 0 Curtidas

Estrutura d dados em C(lista encadeada) Alguem me da um help

#1 Por Tung 02/04/2003 - 23:45
Estou pagando Estrutura de dados na Universidade. Sendo que eu estou viajando geral na matéria dele... O professor dar as funçoes e tal, mas ele tem uma mania horrivel, ele nunca da o MAIN do programa. Ja quebrei aqui a minha cabeça umas 50mil vezes tentanto fazer esse MAIN e naum consigo. Todo dia eu durmo pu** de raiva pq naum consigo resolver isso. O pior de tudo eh q eu ainda tive um pessimo professor de C no semestre passado, e esse professor de estrutura eh daqueles q da a materia e o aluno q se lasque :/.

Resumindo... Alguem pelo AMOR DE DEUS sabe fazer o main dessas funçoes abaixo ?

Até q eu tentei fazer o main no final do post, mas eu sempre empaco ali :/


/*----------------------Funcao insere ordenada ------------------------------*/
int insere_ordenada(tipo_lista *inicio, tipo_elemento info)
{

tipo_no *atual, *anterior, *novo;

if((novo=malloc(sizeof(tipo_no)))==NULL)
return(0);

novo-> elemento= info;

if(*inicio == NULL)
novo -> prox = *inicio;
*inicio = novo;
return(1);
}

for(atual= *inicio; atual != NULL && atual_elemento.matricula < info.matricula; atual = atual -> prox)

anterior = atual;

if(atual == *inicio)
{
novo-.prox = atual;
*inicio = novo;
return (1);
}
anterior -> prox = novo;
novo -> prox = atual;
return (1);
}
/* -----------------------Funcao remove ordenado --------------------------*/

int remove_ordenada(tipo_lista *inicio, tipo_elemento info)
{
tipo_no *atual, *anterior;

if(*inicio == NULL)
return(0);
for (atual = *inicio; atual != NULL && atual -> elemento.matricula < info.matricula; atual = atual-> prox)
{
anterior = atual;

if( atual == NULL)
return(0);

if( atual->elemento.matricula == info.matricula)
{
if( atual == inicio )
{
*inicio = atual -> prox;
free(atual);
return(1);
}

anterior -> prox = atual->prox;
free(atual);
return(1);
}
else return(0);

}

/* ------------------------- Programa Principal -----------------------------*/

int main()
{

char opcao;

do {
printf("\nEscolha a opcao: \n");
printf("[ 1 ] - Inserir ordenadamente\n");
printf("[ 2 ] - Remover ordenadamente \n");
printf("[ 3 ] - Listar\n");
printf("[ 4 ] - Sair\n");

opcao= getchar();
}
while ( opcao != '4');

}
Andreia_Sp
Andreia_Sp Super Participante Registrado
654 Mensagens 1 Curtida
#2 Por Andreia_Sp
05/04/2003 - 15:57
Tung
Estou pagando Estrutura de dados na Universidade. Sendo que eu estou viajando geral na matéria dele... O professor d...


Tung, eu compreendo exatamento como voce está. Se voce morasse em SP juraria que vc estaria tendo aulas com o mesmo professor que eu tenho, porem vejo que pessoas como meu professor infelizmente existem em outras cidades.
Eu postei uma mensagem aqui no site, perguntando como gerar um codigo que ordena, porem meu programa eh em C++, o que nao mudam tanto assim pro C, se vc quiser dar uma olhada segue o link

http://www.forumgdh.net/viewtopic.php?p=430331#430331

Caso vc ainda naum tenha conseguido resolver o problema do seu programa, poste aqui novamente avisando que tentarei ver se eu acho alguma instrução que te ajude


até +
"Eu acreditava no sistema, até que formataram minha família."

"Se as coisas são feitas para serem usadas e as pessoas para serem amadas, por que amamos as coisas e usamos as pessoas ???"
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal