Estrutura

739 palavras 3 páginas
#include
#include

struct no{//estrutura no int dado; struct no * prox;
};

typedef struct no * lista;

lista init(lista l){ return NULL; //criação da lista
}

//Função para inserir no final da lista lista insere(lista l,int elem){ lista aux,novo;//declaração das listas auxiliares locais aux=l; //auxiliar recebe l novo = (lista) malloc(sizeof(struct no));//alocando espaço novo->dado=elem;//recebendo novo elemento

if(l==NULL){ //condição para inserir o 1° elemento novo->prox=l; l=novo; }else{ while(aux->prox!=NULL)//percorre a lista e insere na ultima posição aux=aux->prox; //lista andando aux->prox=novo; //aponta para o penultimo item novo->prox=NULL; //aponta para último } return l;
}
//Função para mostrar a lista void imprimir(lista l){ if(l==NULL) printf("\nA lista encontra-se vazia.\n"); else while(l != NULL){ printf("%d ", l->dado); l = l ->prox; }
}
//Função para contar o total de elementos que a lista possui int total(lista l){ int cont = 0; if(l==NULL) printf("\nA lista encontra-se vazia.\n"); else while(l != NULL){ cont++; l=l->prox; } return cont;
}
//Função para contar o total de elementos pares que a lista possui int par(lista l){ int cont = 0; if(l==NULL) printf("\nA lista encontra-se vazia.\n"); else while(l != NULL){ if((l->dado % 2)==0) cont++; l=l->prox; } return cont;
}
//Função que retornar o somatório de elementos da lista int somar(lista l){ int calc = 0; if(l==NULL) printf("\nA lista encontra-se vazia.\n"); else while(l != NULL){ calc += l->dado; l=l->prox; } return calc;
}

Relacionados

  • estruturas
    663 palavras | 3 páginas
  • Estrutura
    1545 palavras | 7 páginas
  • Estruturas
    5123 palavras | 21 páginas
  • Estruturas
    1100 palavras | 5 páginas
  • Estruturas
    5130 palavras | 21 páginas
  • Estrutura
    2126 palavras | 9 páginas
  • Estruturas
    5393 palavras | 22 páginas
  • Estrutura
    1803 palavras | 8 páginas
  • estruturas
    1858 palavras | 8 páginas
  • Estruturas
    3693 palavras | 15 páginas