Ir ao conteúdo
  • Cadastre-se

MPR00

Membro Júnior
  • Posts

    8
  • Cadastrado em

  • Última visita

Reputação

0
  1. entendi, mas o que eu estava falando é que esse codigo que postei esta com erros, meu amigo estava me ensinando e passou essa questão porém n consigo identificar os erros no codigo citado acima
  2. estava estudando lista mas fiquei com uma duvida existem operações que são iguais na lista com alocação dinamica e na pilha, ex: buscar valor e existem operações que estão presentes apenas na lista com alocação dinamica? Caso consiga me respoder, quais são elas?
  3. Conseguiria alterar o codigo pra eu ver como fica?
  4. Gostaria de uma explicação passo a passo se possivel, obrigado desde já void XYZ(TLISTA *pLista) { struct TNO *aux1, *aux2;  if ((*pLista) != NULL) { aux1 = (*pLista);  if (aux1->prox == NULL) {  free(aux1); (*pLista) = NULL; } else { while (aux1->prox->prox != NULL) { aux1 = aux1->prox; } aux2 = aux1->prox; aux1->prox = NULL; free(aux2); } }}
  5. void XYZ(TLISTA *pLista) { struct TNO *aux1, *aux2; if ((*pLista) != NULL) { aux1 = (*pLista); if (aux1->prox == NULL) { free(aux1); (*pLista) = NULL; } else { while (aux1->prox->prox != NULL) { aux1 = aux1->prox; } aux2 = aux1->prox; aux1->prox = NULL; free(aux2); } }}
  6. void InserirListaPosicao (TLISTA *pLista, TREGISTRO pReg, int pPos) { struct TNO *novo, *aux1, *aux2; novo = (struct TNO *) malloc(sizeof (struct TNO)); novo->reg = pReg; novo->prox = NULL; if (*pLista == NULL) { (*pLista) = novo; } else { if (pPos == 0) { novo->prox = (*pLista); (*pLista) = novo; } else { aux1 = (*pLista); int i = 0; while (i<pPos) { aux1 = aux1->prox; } novo->prox = aux1->prox; aux1->prox = novo; } } } adicionado 21 minutos depois Ainda n consigo identificar os erros
  7. #include <stdio.h> #include <stdlib.h> typedef struct { int chave; }REGISTRO; struct NO { REGISTRO reg; struct no *pont1; struct no *pont2; }; main() { struct NO *pAux1, *pAux2, *pAux3; pAux1 = (struct NO *) malloc(sizeof(struct NO)); pAux1->reg.chave = 8; pAux1->pont1 = NULL; pAux1->pont2 = NULL; pAux2 = (struct NO *) malloc(sizeof(struct NO)); pAux2->reg.chave = 21; pAux2->pont1 = NULL; pAux2->pont2 = NULL; pAux3 = (struct NO *) malloc(sizeof(struct NO)); pAux3->reg.chave = 31; pAux3->pont1 = NULL; pAux3->pont2 = pAux2; pAux2->pont1 = pAux3; pAux2->pont2 = pAux1; pAux1->pont1 = pAux2; pAux1->pont2 = NULL; while (pAux3 != NULL) { printf(" %d ", pAux3->reg.chave); pAux3 = pAux3->pont2; } system("pause");}

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades 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...