Advertisement
Alx09

10.4

May 8th, 2022
972
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 1.60 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4.  
  5. typedef struct lista1{
  6.     int var;       
  7.     struct lista1 *pred;
  8.     struct lista1 *urm;
  9.     }lista1;
  10.  
  11. lista1 *lista1_nou(const int var)
  12. {
  13.     lista1 *c=(lista1*)malloc(sizeof(lista1));
  14.     if(!c){
  15.         printf("memorie insuficienta");
  16.         exit(EXIT_FAILURE);
  17.         }
  18.     c->var =  var;
  19.     return c;
  20. }
  21.  
  22. #define LISTAD_NUME     Lista1      // numele TDA
  23. #define LISTAD_ELEMENT   lista1         // tipul unui element din lista
  24. #include "listad.h"
  25.  typedef struct lista2{
  26.     float var;         
  27.     struct lista2 *pred;
  28.     struct lista2 *urm;
  29.     }lista2;
  30.  
  31. lista2 *lista2_nou(const float var)
  32. {
  33.     lista2 *c=(lista2*)malloc(sizeof(lista2));
  34.     if(!c){
  35.         printf("memorie insuficienta");
  36.         exit(EXIT_FAILURE);
  37.         }
  38.     c->var =  var;
  39.     return c;
  40. }
  41.  
  42. #define LISTAD_NUME     Lista2      // numele TDA
  43. #define LISTAD_ELEMENT   lista2         // tipul unui element din lista
  44. #include "listad.h"
  45.  
  46.  
  47.  
  48. int main()
  49. {
  50.     Lista1 p;
  51.     Lista2 p2;
  52.     float var = 0;
  53.     Lista1_init(&p);
  54.     Lista2_init(&p2);
  55.     lista1 *l1;
  56.     lista2 *l2;
  57.     do{
  58.         scanf("%f", &var);
  59.         if(var != 0){
  60.             if((int)var <  var)
  61.             Lista2_adauga(&p2, lista2_nou(var));
  62.                 else
  63.             Lista1_adauga(&p, lista1_nou((int) var));
  64.         }
  65.    
  66.     }while(var != 0);
  67.    
  68.       for(l1=p.prim;l1;l1=l1->urm)printf("%d ",l1->var);
  69.                 printf("\n");
  70.       for(l2=p2.prim;l2;l2=l2->urm)printf("%f ",l2->var);
  71.                 printf("\n");
  72.     return 0;
  73. }
  74.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement