Advertisement
sconetto

Lista Encadeada Simples

Mar 21st, 2016
79
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.51 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3.  
  4. typedef struct elemento Elemento;
  5.  
  6. struct elemento {
  7.     int info;
  8.     Elemento* prox;
  9. };
  10.  
  11. Elemento* lst_cria (void) {
  12.     return NULL;
  13. }
  14.  
  15. Elemento* lst_insere (Elemento* lst, int val) {
  16.     Elemento* novo = (Elemento*) malloc(sizeof(Elemento));
  17.     novo->info = val;
  18.     novo->prox = lst;
  19.     return novo;
  20. }
  21.  
  22. /*void imprime_lst(Elemento* lst){
  23.     if(lst != NULL){
  24.         printf("info = %d\n", lst->info);
  25.         imprime_lst(lst->prox);
  26.     }
  27. }*/
  28.  
  29. void lst_imprime(Elemento* lst) {
  30.     Elemento* p;
  31.     for (p = lst; p != NULL; p = p->prox) {
  32.         printf("info = %d\n", p->info);
  33.     }
  34. }
  35.  
  36. int lst_vazia (Elemento* lst) {
  37.     return (lst == NULL);
  38. }
  39.  
  40. int procura_info(Elemento* lst, int procurado) {
  41.     Elemento* p;
  42.     for (p = lst; p != NULL; p = p->prox) {
  43.         if (p->info == procurado) {
  44.             return 1;
  45.         }
  46.     }
  47.     return 0;
  48. }
  49.  
  50. int retira_elemento(Elemento* lst, int elemento_retirar){
  51.     Elemento* p;
  52.     for (p = lst; p != NULL; p = p->prox) {
  53.         if (p->info == elemento_retirar) {
  54.         }
  55.     }
  56. }
  57.  
  58. int main(int argc, char const *argv[]) {
  59.     Elemento* lst;
  60.     int procurar, encontrado = 0;
  61.  
  62.     scanf("%d", &procurar);
  63.  
  64.     lst = lst_cria();
  65.  
  66.     lst = lst_insere(lst, 23);
  67.     lst = lst_insere(lst, 45);
  68.     lst = lst_insere(lst, 51);
  69.     lst = lst_insere(lst, 67);
  70.  
  71.     //imprime_lst(lst);
  72.     lst_imprime(lst);
  73.     retira_elemento(lst, 23);
  74.     lst_imprime(lst);
  75.     encontrado = procura_info(lst, procurar);
  76.     if (encontrado == 1) {
  77.         printf("Valor encontrado!\n");
  78.     }
  79.     else
  80.         printf("Valor não encontrado!\n");
  81.  
  82.     return 0;
  83. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement