Ir ao conteúdo
  • Cadastre-se

Lucas Bispo 150

Membros Juniores
  • Total de itens

    1
  • Registro em

  • Última visita

  • Qualificações

    N/D
  1. Boa noite, solicito ajuda pois existe um erro de seguimento e não consigo enxergar onde errei,quem pude me ajudar por gentileza? #include<stdio.h> #include<stdlib.h> typedef struct ponto{ int x; //char nome[] struct ponto *proximo; }t_ponto; void inserir(t_ponto *ini_ponto){ int resp; t_ponto *proximo_ponto; if (ini_ponto == NULL) exit(1); printf("Digite x:"); scanf("%d",&proximo_ponto->x); proximo_ponto -> proximo = (t_ponto*)malloc(sizeof(t_ponto)); proximo_ponto = proximo_ponto->proximo; proximo_ponto->proximo = NULL; proximo_ponto = ini_ponto; } t_ponto *buscar(int valor, t_ponto *ini_ponto){ t_ponto *proximo_ponto; proximo_ponto = ini_ponto; printf("Qaul valor deseja buscar na lista.\n"); scanf("%d",&valor); while (proximo_ponto != NULL){ if (proximo_ponto->x == valor){ return proximo_ponto; } else{ return NULL; } proximo_ponto = proximo_ponto->proximo; } } t_ponto *remover(int valor, t_ponto *ini_ponto){ t_ponto *proximo_ponto, *anterior; proximo_ponto = ini_ponto->proximo; anterior = ini_ponto; printf("Qual valor deseja remover?"); scanf("%d",&valor); if (anterior->x == valor){ ini_ponto = proximo_ponto; printf("Valor apagado pois se encontava no inicio da lista.\n"); free(anterior); } while(proximo_ponto != NULL){ if(proximo_ponto->x == valor){ anterior->proximo = proximo_ponto->proximo; printf("Valor deletado.\n"); free(proximo_ponto); } anterior = proximo_ponto; proximo_ponto = proximo_ponto->proximo; } } int main(){ t_ponto *ini_ponto, *proximo_ponto, *resposta_funcao_busca; int valor, res; ini_ponto = (t_ponto *)malloc(sizeof(t_ponto)); proximo_ponto = ini_ponto; do{ printf("Digite 1 para inserir elementos a lista.\nDigite 2 para realizar busca de elementos.\nDigite 3 para realizar a remo??o de elementos na lista.\nDigite 4 para listar.\n"); scanf("%d",&res); switch (res){ case 1:{ inserir(ini_ponto); break; } case 2:{ resposta_funcao_busca = buscar(valor,ini_ponto); if (resposta_funcao_busca < 0){ printf("%d\n",resposta_funcao_busca->x); } else printf("Valor não encontrado.\n"); break; } case 3:{ remover(valor,ini_ponto); break; } } }while((res!=1)||(res!=2)||(res!=3)); return 0; }

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

Eletrônica

PROMOÇÃO DE QUARENTENA

Aproveite o isolamento social para aprender eletrônica!
De R$ 39,90 por apenas R$ 19,90
Só até as 23h59min desta sexta-feira 10/04/2020

CLIQUE AQUI E COMPRE AGORA MESMO!