Advertisement
Guest User

Untitled

a guest
Aug 27th, 2015
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.23 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct lista{
  5.     int valor;
  6.     struct lista *proximo;
  7. }Lista;
  8.  
  9. Lista *iniciaLista(){
  10.     Lista *novo = (Lista*)malloc(sizeof(Lista) * 1);
  11.  
  12.     if(novo == NULL){
  13.         return NULL;
  14.     }else{
  15.         novo->proximo = NULL;
  16.         return novo;
  17.     }
  18. }
  19.  
  20. Lista *addInicio(Lista *list, int numero){
  21.     Lista *inicio = (Lista*)malloc(sizeof(Lista) * 1);
  22.  
  23.     if(inicio == NULL){
  24.         return NULL;
  25.     }else{
  26.         inicio->proximo = list;
  27.         inicio->valor = numero;
  28.         return inicio;
  29.     }
  30. }
  31.  
  32. Lista *addFinal(Lista *list, int numero){
  33.     Lista *fim = (Lista*)malloc(sizeof(Lista) * 1);
  34.     Lista *aux = list;
  35.     fim->proximo = NULL;
  36.     fim->valor = numero;
  37.  
  38.     if(list == NULL){
  39.         return NULL;
  40.     }else{
  41.         while(aux->proximo != NULL){
  42.             aux = aux->proximo;
  43.         }
  44.  
  45.         aux->proximo = fim;
  46.         return fim;
  47.     }
  48. }
  49.  
  50.  
  51. void imprimi(Lista *list){
  52.  
  53.     Lista *p = list;
  54.  
  55.     while(p->proximo != NULL){
  56.         printf("%d\n", p->valor);
  57.         p = p->proximo;
  58.     }
  59.  
  60. }
  61. int main(){
  62.  
  63.     Lista *l = iniciaLista();
  64.  
  65.     l = addInicio(l, 10);
  66.     l = addFinal(l, 15);
  67.  
  68.     imprimi(l);
  69.  
  70. return 0;
  71. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement