Advertisement
EvgeniiKraaaaaaaav

TEST_array_list(need array_list + list.h)

Feb 13th, 2019
77
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 5.83 KB | None | 0 0
  1. //https://vk.com/evgenykravchenko0
  2.  
  3.                 ___                                        ___                   ___    
  4.                /  /\                  ___                 /  /\                 /  /\    
  5.               /  /:/_                /__/\               /  /:/_               /  /:/_  
  6.              /  /:/ /\               \  \:\             /  /:/ /\             /  /:/ /\  
  7.             /  /:/ /:/_               \  \:\           /  /:/_/::\           /  /:/ /:/_
  8.            /__/:/ /:/ /\          ___  \__\:\         /__/:/__\/\:\         /__/:/ /:/ /\
  9.            \  \:\/:/ /:/         /__/\ |  |:|         \  \:\ /~~/:/         \  \:\/:/ /:/
  10.             \  \::/ /:/          \  \:\|  |:|          \  \:\  /:/           \  \::/ /:/
  11.              \  \:\/:/            \  \:\__|:|           \  \:\/:/             \  \:\/:/  
  12.               \  \::/              \__\::::/             \  \::/               \  \::/  
  13.                \__\/                   ~~~~               \__\/                 \__\/    
  14.                             ___                                            
  15.                            /__/\                ___                 ___    
  16.                            \  \:\              /  /\               /  /\    
  17.                             \  \:\            /  /:/              /  /:/    
  18.                         _____\__\:\          /__/::\             /__/::\    
  19.                        /__/::::::::\         \__\/\:\__          \__\/\:\__
  20.                        \  \:\~~\~~\/            \  \:\/\            \  \:\/\
  21.                         \  \:\  ~~~              \__\::/             \__\::/
  22.                          \  \:\                  /__/:/              /__/:/
  23.                           \  \:\                 \__\/               \__\/  
  24.                            \__\/                      
  25.  
  26. #include <stdio.h>
  27. #include <stdlib.h>
  28. #include <locale.h>
  29. #include "list.h"
  30.  
  31. int main(int argc, char *argv[])
  32. {
  33.     size_t i;
  34.     int val;
  35.     List *lst, *lstCopy;
  36.    
  37.     setlocale(LC_ALL, "Russian");
  38.    
  39.     printf("—ÓÁ‰‡∏Ï ÔÛÒÚÓÈ ÒÔËÒÓÍ:\n");
  40.     lst = Create();
  41.     PrintList(lst);
  42.    
  43.     printf("\nƒÓ·‡‚ÎeÌË ˝ÎÂÏÂÌÚÓ‚ ‚ ÍÓ̈ ÒÔËÒ͇:\n");
  44.     for (i = 0; i < 10; i ++)
  45.         Append(lst, i);
  46.     PrintList(lst);
  47.    
  48.     printf("\nœÓÎÌÓ ÍÓÔËÓ‚‡ÌË ÒÔËÒ͇:\n");
  49.     lstCopy = Copy(lst);
  50.     PrintList(lstCopy);
  51.        
  52.     printf("\nƒÓ·‡‚ÎeÌË ˝ÎÂÏÂÌÚÓ‚ ‚ ̇˜‡ÎÓ ÒÔËÒ͇:\n");
  53.     for (i = 10; i < 20; i ++)
  54.         Prepend(lstCopy, i);
  55.     PrintList(lstCopy);
  56.    
  57.     printf("\n¬ÒÚ‡‚͇ ‚ÒÂı ˝ÎÂÏÂÌÚÓ‚ Ó‰ÌÓ„Ó ÒÔËÒ͇ ‚ ÍÓ̈ ‰Û„Ó„Ó:\n");
  58.     AppendAll(lstCopy, lst);
  59.     PrintList(lstCopy);
  60.    
  61.     // ÒÓÁ‰‡∏Ï ÂÁÂ‚ÌÛ˛ ÍÓÔ˲ ‰Îˇ ‰‡Î¸ÌÂȯËı ÚÂÒÚÓ‚
  62.     lstCopy = Copy(lst);
  63.    
  64.     printf("\n¬ÒÚ‡‚͇ ˝ÎÂÏÂÌÚ‡ ÔÓ Ë̉ÂÍÒÛ:\n");
  65.     printf("¬ÒÚ‡‚͇ ‚ ÌÛÎÂ‚Û˛ ÔÓÁËˆË˛:\n");
  66.     InsertAt(lst, 99, 0);
  67.     PrintList(lst);
  68.     printf("¬ÒÚ‡‚͇ ‚ ÔÓÒÎÂ‰Ì˛˛ ÔÓÁËˆË˛:\n");
  69.     InsertAt(lst, 100, 10);
  70.     PrintList(lst);
  71.     printf("¬ÒÚ‡‚͇ ‚ ÔÓÁËˆË˛ Á‡ ÔÓÒΉÌËÏ ˝ÎÂÏÂÌÚÓÏ:\n");
  72.     InsertAt(lst, 101, 15);
  73.     PrintList(lst);
  74.    
  75.     // ‚ÓÒÒڇ̇‚ÎË‚‡ÂÏ ÒÔËÒÓÍ ËÁ ÂÁÂ‚ÌÓÈ ÍÓÔËË
  76.     lst = Copy(lstCopy);
  77.  
  78.     printf("\n”‰‡ÎÂÌË ˝ÎÂÏÂÌÚ‡ ÔÓ Ë̉ÂÍÒÛ:\n");
  79.     printf("»ÒıÓ‰Ì˚È ÒÔËÒÓÍ:\n");
  80.     PrintList(lst);
  81.     printf("”‰‡ÎÂÌË ËÁ ÌÛ΂ÓÈ ÔÓÁˈËË:\n");
  82.     RemoveAt(lst, 0);
  83.     PrintList(lst);
  84.     printf("”‰‡ÎÂÌË ËÁ ÔÓÒΉÌÂÈ ÔÓÁˈËË:\n");
  85.     RemoveAt(lst, 8);
  86.     PrintList(lst);
  87.     printf("”‰‡ÎÂÌË ËÁ ÔÓÁˈËË Á‡ ÔÓÒΉÌËÏ ˝ÎÂÏÂÌÚÓÏ:\n");
  88.     RemoveAt(lst, 8);
  89.     PrintList(lst);
  90.  
  91.     printf("\n”‰‡ÎÂÌË ‚ÒÂı ˝ÎÂÏÂÌÚÓ‚ ËÁ ÒÔËÒ͇:\n");
  92.     RemoveAll(lst);
  93.     PrintList(lst);
  94.    
  95.     // ‚ÓÒÒڇ̇‚ÎË‚‡ÂÏ ÒÔËÒÓÍ ËÁ ÂÁÂ‚ÌÓÈ ÍÓÔËË
  96.     lst = Copy(lstCopy);
  97.    
  98.     printf("\n”‰‡ÎÂÌË ˝ÎÂÏÂÌÚ‡ Ò ÍÓ̈‡ ÒÔËÒ͇, ÙÛÌÍˆËˇ ‚ÓÁ‚‡˘‡ÂÚ Û‰‡ÎÂÌÌ˚È ˝ÎÂÏÂÌÚ:\n");
  99.     printf("»ÒıÓ‰Ì˚È ÒÔËÒÓÍ:\n");
  100.     PrintList(lst);
  101.     for (i = 0; i < 10; i ++)
  102.     {
  103.         val = Pop(lst);
  104.         printf("›ÎÂÏÂÌÚ: %d, —ÔËÒÓÍ: ", val);
  105.         PrintList(lst);
  106.     }
  107.    
  108.     // ‚ÓÒÒڇ̇‚ÎË‚‡ÂÏ ÒÔËÒÓÍ ËÁ ÂÁÂ‚ÌÓÈ ÍÓÔËË
  109.     lst = Copy(lstCopy);
  110.    
  111.     printf("\n”‰‡ÎÂÌË ˝ÎÂÏÂÌÚ‡ Ò Ì‡˜‡Î‡ ÒÔËÒ͇, ÙÛÌÍˆËˇ ‚ÓÁ‚‡˘‡ÂÚ Û‰‡ÎÂÌÌ˚È ˝ÎÂÏÂÌÚ:\n");
  112.     printf("»ÒıÓ‰Ì˚È ÒÔËÒÓÍ: ");
  113.     PrintList(lst);
  114.     for (i = 0; i < 10; i ++)
  115.     {
  116.         val = Dequeue(lst);
  117.         printf("›ÎÂÏÂÌÚ: %d, —ÔËÒÓÍ: ", val);
  118.         PrintList(lst);
  119.     }
  120.    
  121.     // ‚ÓÒÒڇ̇‚ÎË‚‡ÂÏ ÒÔËÒÓÍ ËÁ ÂÁÂ‚ÌÓÈ ÍÓÔËË
  122.     lst = Copy(lstCopy);
  123.    
  124.     printf("\n¬˚˜ËÒÎÂÌË ‰ÎËÌ˚ ÒÔËÒ͇:\n");
  125.     printf("»ÒıÓ‰Ì˚È ÒÔËÒÓÍ: ");
  126.     PrintList(lst);
  127.     printf("ƒÎË̇: %d\n", Length(lst));
  128.     printf("Œ˜Ë˘‡ÂÏ ÒÔËÒÓÍ: ");
  129.     RemoveAll(lst);
  130.     PrintList(lst);
  131.     printf("ƒÎË̇: %d\n", Length(lst));
  132.  
  133.    
  134.     // ‚ÓÒÒڇ̇‚ÎË‚‡ÂÏ ÒÔËÒÓÍ ËÁ ÂÁÂ‚ÌÓÈ ÍÓÔËË
  135.     lst = Copy(lstCopy);
  136.    
  137.     printf("\n¬ÁˇÚË ˝ÎÂÏÂÌÚ‡ ÒÔËÒ͇ ÔÓ Ë̉ÂÍÒÛ:\n");
  138.     printf("»ÒıÓ‰Ì˚È ÒÔËÒÓÍ: ");
  139.     PrintList(lst);
  140.     for (i = 0; i < 10; i ++)
  141.         printf("›ÎÂÏÂÌÚ π%d = %d\n", i, GetAt(lst, i));
  142.    
  143.     RemoveAll(lst);
  144.     RemoveAll(lstCopy);
  145.     printf("\n");
  146.    
  147.     system("Pause");   
  148.     return 0;
  149. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement