Прикреплённый файл «1.c»

Загрузка

   1 #include <stdio.h>
   2 #include <stdlib.h>
   3 
   4 struct node_struct {
   5     int elem; // полезный элемент
   6     struct node_struct *next; // ссылка на следующую структуру
   7 };
   8 
   9 typedef struct node_struct node;
  10 typedef node* list;
  11 const list empty_list=NULL;
  12 
  13 void print_node( list l )
  14 {
  15     if( l == NULL )
  16       printf( "empty list\n");
  17     else
  18       printf( "node [%X]: elem = %d, next = %X\n", (unsigned)l,
  19               (*l).elem, (unsigned)(*l).next );
  20 }
  21 
  22 void print_list( list l )
  23 {
  24     list i;
  25     i = l;
  26     while( i != empty_list )
  27     {
  28         print_node( i );
  29         i = i->next;
  30     }
  31 }
  32 
  33 int length( list l )
  34 {
  35     // возвращает длину списка в элементах
  36 }
  37 
  38 void square_list()
  39 {
  40     list l;
  41     // возводит в квадрат каждый элемент списка
  42 }
  43 
  44 list read_list()
  45 {
  46     list l;
  47     // ... прочитать список с клавиатуры
  48     return l;
  49 }
  50 
  51 list make_test_list()
  52 {
  53     list l, l1;
  54     l = empty_list;
  55 
  56      l1 = malloc( sizeof(node) ); // новый узел
  57     (*l1).elem = 7;
  58     (*l1).next = l;
  59     l = l1; //
  60 
  61     l1 = malloc( sizeof(node) ); // новый узел
  62     (*l1).elem = 8;
  63     (*l1).next = l;
  64     l = l1; //
  65 
  66     l1 = malloc( sizeof(node) ); // новый узел
  67     (*l1).elem = 9;
  68     (*l1).next = l;
  69     l = l1; //
  70 }
  71 
  72 int main()
  73 {
  74     list l = make_test_list();
  75     print_list (l);
  76 
  77     return 0;
  78 }

Прикреплённые файлы

Для ссылки на прикреплённый файл в тексте страницы напишите attachment:имяфайла, как показано ниже в списке файлов. Не используйте URL из ссылки «[получить]», так как он чисто внутренний и может измениться.

Вам нельзя прикреплять файлы к этой странице.