Buscar

lista encadeada insert final

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

FACULDADE PITÁGORAS
CURSO DE CIÊNCIA DA COMPUTAÇÃO
DISCIPLINA: ESTRUTURA DE DADOS AVANÇADA – 2020.01
PROFESSOR: PROF. MSC. ROBERTH SILVA
ALUNOS: Rayllanderson Gonçalves Rodrigues, Vandeilson Correia Fernandes, Wilckson Tomaz Machado, Matheus Silva Moraes, Kydd Florêncio Reis.
ATIVIDADE AVALIATIVA 1
Implementar uma TAD Lista para que o insert seja feito no final
#include <stdio.h>
#include <stdlib.h>
typedef struct elemento{
    int info;
    struct elemento *prox;
} Elemento;
//função para criar a lista: retorna uma lista vazia
Elemento *criar_lista(void){
    return NULL;
}
//Inserção no final da lista
Elemento *inserir_no(Elemento *lista, int valor){
    Elemento *no = (Elemento *)malloc(sizeof(Elemento));
    No -> info = valor;
    if (lista == NULL){
        lista = no;
        no -> prox = NULL;
    }else{
        Elemento *aux = lista;
        while (aux -> prox != NULL){
            aux = aux -> prox;
        }
        no -> prox = NULL;
        aux -> prox = no;
    }
    return lista;
}
void imprimir_lista(Elemento *lista){
    Elemento *p; //declarar ponteiro auxiliar p
    for (p = lista; p != NULL; p = p -> prox){
        printf("valor: %d\n", p -> info);
    }
}
int verificar_lista_vazia(Elemento *lista){
    if (lista == NULL){
        return 1; //retorna 1 se vazia e 0 senão
    }
    else{
        return 0;
    }
}
int main(void)
{
    Elemento *lista;       //cria uma lista
    lista = criar_lista(); //cria e inicializa como vazia
    lista = inserir_no(lista, 14);
    lista = inserir_no(lista, 16);
    imprimir_lista(lista);
    return 0;
}
Saída:
[Running] cd "c:\Users\ray\Desktop\estrututa de dados \" && gcc lista.c -o texte && "c:\Users\ray\Desktop\estrututa de dados\"lista
valor: 14
valor: 16

Outros materiais