TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Lista Simplesmente Encadeada Em C

Casos: Lista Simplesmente Encadeada Em C. Pesquise 860.000+ trabalhos acadêmicos

Por:   •  13/9/2014  •  380 Palavras (2 Páginas)  •  422 Visualizações

Página 1 de 2

#include <stdio.h>

#include <stdlib.h>

#include <conio.c>

#include <windows.h>

//Criando a Estrutura da Lista

struct Tipo_lista {

int cod;

struct Tipo_lista *prox;

};

//Determinando um ponteiro para o primeiro e o ultimo item da lista

struct Tipo_lista *primeiro;

struct Tipo_lista *ultimo;

//Criando a Função de Lista Vazia

void Lista_vazia(){

//faz e estrutura Tipo_lista apontar para aux

struct Tipo_lista *aux;

/* Antes do malloc diz que eu quero alocar uma estrutura do tipo lista e depois (o malloc é o comando para alocar)

e depois do malloc o sizeof "do tamanho de': nesse caso é do tamanho que a estrutura Tipo_lista vai suportar */

aux=(struct Tipo_lista*)malloc(sizeof(struct Tipo_lista));

/* A variavel primeiro passa a valer aux e ultimo passa a valer primeiro */

primeiro=aux;

ultimo=primeiro;

}

void insere (int x){

struct Tipo_lista *aux;

aux=(struct Tipo_lista*)malloc(sizeof(struct Tipo_lista));

// Nessa primeira parte ele pega o valor de ( x ) e joga para ( cod ) - aux recebe o valor porque aponta para ( cod )

aux->cod=x;

// Nessa primeira parte ele pega o valor de ( aux ) e joga para ( prox ) - ultimo recebe o valor porque aponta para ( prox )

ultimo->prox=aux;

// Nessa primeira parte ele diz que ultimo é igual ao ( prox ) que aponta para o ( ultimo )

ultimo=ultimo->prox;

//NULL é a condição de parada apos a inserção do item

aux->prox=NULL;

}

void imprime(){

struct Tipo_lista *aux;

/* Determinamos que aux= primeiro->prox porque na função Lista Vazia um aux já foi criado e nao recebeu nenhum valor

Então o imprime começa a contar o 2 aux da função Inserir ou seja ele conta a 2 posição, por isso aux= primeiro->prox*/

aux=primeiro->prox;

/* Enquanto aux for diferente de NULL e porque nos temos items na lista

por isso en cada looping determinamos que aux = aux->prox assim ele vai escaneando todos items da lista ate chegar em NULL*/

while(aux != NULL){

printf("Item %d",aux->cod);

aux=aux->prox;

}

}

int pesquisa(int x){

struct Tipo_lista *aux;

...

Baixar como (para membros premium)  txt (2.9 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com