ݺߣ

ݺߣShare a Scribd company logo
Лабораторная работа №9 Модульное программирование
Заголовочный файл  “ spisok . h ”     #include <stdio.h>   #include <stdlib.h>   #include <string.h>   #include <conio.h>   #define  MAXDL  9  /* макс. длина идентификатора  (с  признаком  конца '' )  */   struct  EL _ SP   /* тип  элемента  списка  */   {  char  id [MAXDL];    /* идентификатор  */   struct  EL _ SP  *sled;    /* ссылка на следующий элемент  */   };   void  Vkl ( struct  EL_SP **p, char  t_id   [   ] );   void  PechSp (  struct  EL_SP *p );
Файл   “Vkl.c”: #include &quot;spisok.h&quot; /*--------------------------------------- ------------------------ -----------------------*/ /* функция включения очередного идентификатора в список    */ /*---------------------------------------------------- ------------------------- ---------*/ void  Vkl ( struct EL_SP **p, char t_id[] ) {   . . . }
Файл   “PechSp.c”: #include &quot;spisok.h&quot; /*----------------------------------------------------------*/ /*  функция   печати   списка   */ /*----------------------------------------------------------*/ void PechSp (  struct EL_SP *p ) /*  Вх. данные:  p - указатель начала списка  */ {  struct  EL _ SP  *i;  /* указатель текущего элемента  списка */ printf (&quot; Результат :&quot;); for ( i=p; i!=NULL; i=i->sled ) puts (i->id); }
Файл  “main.c” : #include &quot;spisok.h&quot; /*  О С Н О В Н А Я  П Р О Г Р А М М А  */ main() {  struct  EL _ SP  *p;  /* указатель начала списка  */ unsigned  n ;  /* количество идентификаторов  */ unsigned  i ;  /* параметр цикла  */ char t_id[MAXDL];  /* текущий идентификатор  */ printf (&quot;Введите число идентификаторов n=&quot;); scanf (&quot;%u&quot;,&n); getchar();  /* пропуск символа &quot;перевод строки&quot; */ p=NULL;  /* список пока пуст */
printf (&quot;Введите идентификаторы &quot;); printf (&quot;(после каждого нажимайте клавишу <Enter> )&quot;); for ( i=1; i<=n; i++ ) {  gets (t_id); V kl (&p,t_id);  /* включение ид-ра в список */ } P ech S p (p);  /* печать списка */ printf (&quot;Для завершения нажмите любую клавишу&quot;); getch(); }
Файл проекта “ spisok . prj ”  Vkl.c PechSp.c main.c

More Related Content

лабораторная работа №9

  • 1. Лабораторная работа №9 Модульное программирование
  • 2. Заголовочный файл “ spisok . h ” #include <stdio.h> #include <stdlib.h> #include <string.h> #include <conio.h> #define MAXDL 9 /* макс. длина идентификатора (с признаком конца '' ) */ struct EL _ SP /* тип элемента списка */ { char id [MAXDL]; /* идентификатор */ struct EL _ SP *sled; /* ссылка на следующий элемент */ }; void Vkl ( struct EL_SP **p, char t_id [ ] ); void PechSp ( struct EL_SP *p );
  • 3. Файл “Vkl.c”: #include &quot;spisok.h&quot; /*--------------------------------------- ------------------------ -----------------------*/ /* функция включения очередного идентификатора в список */ /*---------------------------------------------------- ------------------------- ---------*/ void Vkl ( struct EL_SP **p, char t_id[] ) { . . . }
  • 4. Файл “PechSp.c”: #include &quot;spisok.h&quot; /*----------------------------------------------------------*/ /* функция печати списка */ /*----------------------------------------------------------*/ void PechSp ( struct EL_SP *p ) /* Вх. данные: p - указатель начала списка */ { struct EL _ SP *i; /* указатель текущего элемента списка */ printf (&quot; Результат :&quot;); for ( i=p; i!=NULL; i=i->sled ) puts (i->id); }
  • 5. Файл “main.c” : #include &quot;spisok.h&quot; /* О С Н О В Н А Я П Р О Г Р А М М А */ main() { struct EL _ SP *p; /* указатель начала списка */ unsigned n ; /* количество идентификаторов */ unsigned i ; /* параметр цикла */ char t_id[MAXDL]; /* текущий идентификатор */ printf (&quot;Введите число идентификаторов n=&quot;); scanf (&quot;%u&quot;,&n); getchar(); /* пропуск символа &quot;перевод строки&quot; */ p=NULL; /* список пока пуст */
  • 6. printf (&quot;Введите идентификаторы &quot;); printf (&quot;(после каждого нажимайте клавишу <Enter> )&quot;); for ( i=1; i<=n; i++ ) { gets (t_id); V kl (&p,t_id); /* включение ид-ра в список */ } P ech S p (p); /* печать списка */ printf (&quot;Для завершения нажмите любую клавишу&quot;); getch(); }
  • 7. Файл проекта “ spisok . prj ” Vkl.c PechSp.c main.c