Ir ao conteúdo
  • Cadastre-se

Programação em C...?


Visitante

Posts recomendados

Olá, estou fazendo faculdade de Sistemas, porém uma das matérias não tive por questões de transferência, ficando para trás a linguagem C. 
Estou tentando compreender, o professor passou uma lista mas não consigo "desempacar". 

Poderia alguém com tal conhecimento me explicar melhor como faria este ex. 

"Escreva uma função que copie um vetor para uma lista encadeada." 

Obrigado.

Link para o comentário
Compartilhar em outros sites

Tentando algo aqui mas está com alguns erros, estou até chateado já, tendo que aprender C na marra. :x

#include <stdio.h>#include <stdlib.h>int main(){    int vet[10]= {10, 20, 30, 40, 50, 60, 70, 80, 90, 100}, i;    typedef struct cel celula;    struct cel;    {        int      conteudo;        celula   *prox;    };    celula *nova, *p, *ini;    ini = malloc( sizeof (celula));    ini->prox = NULL;    p = ini;    for (i=0; i<10; i++)    {        nova = mallocc(sizeof(celula));        nova->conteudo = vet[i];        nova->prox = p->prox;        p->prox = nova;    }    for (p = ini->prox; p != NULL; p = p->prox)        printf("%d\n", p->conteudo);    return 0;}
Link para o comentário
Compartilhar em outros sites

@Erick Sutil

 

Dê uma olhada: http://www.ime.usp.br/~pf/algoritmos/aulas/lista.html assim responde o motivo da mudança no código

 

Coloque a struct fora do main. Não é celula *prox e sim struct celula *prox.

typedef struct celula{    int   conteudo;    struct celula  *prox;}celula;//...

Troque o p=ini para p=ini->prox dentro do for. E coloque o ini->prox para o ponteiro nova.

   for (i=0; i<10; i++)    {        nova = malloc(sizeof(celula));        nova->conteudo = vet[i];        p = ini->prox;        ini->prox = nova;        nova->prox = p;    }

Dê uma olhada também: http://www.cprogressivo.net/2013/10/Listas-em-C-O-que-e-como-funciona-uma-LIST.html

Link para o comentário
Compartilhar em outros sites

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

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...