Лекция: Gets(tel1.fio);
puts(«введите его номер-»);
scanf("%ld",&tel1.num);
tel2=tel1; /* нельзя так же сравнивать структуры */
puts(«Введено:»);
printf(«Фамилия :%s номер: %ld\n»,tel2.fio,tel2.num);
}
Пример 2.
/* Динамическое выделение памяти для структуры */
/* Обращение к элементам структуры через указатель */
#include <stdio.h>
#include <conio.h>
#include <alloc.h>
struct sprav {
char fio[20];
Long num;
};
Void main(void)
{
struct sprav *tel1, *tel2;
Clrscr();
/* Выделение памяти для структуры */
tel1=(struct sprav *)malloc(sizeof(struct sprav));
tel2=(struct sprav *)malloc(sizeof(struct sprav));
puts(«введите фио абонента-»);
gets(tel1->fio);
puts(«введите его номер-»);
scanf("%ld",&tel1->num);
*tel2= *tel1;
puts(«Введено:»);
printf(«Фамилия :%s номер: %ld\n»,(*tel2).fio,(*tel2).num);
}
Массив структур
Пример 3.
/* Массив структур. Обращение к элементам структуры через */
/* имя элемента массива */
#include <stdio.h>
#include <conio.h>
#include <string.h>
#define SPRAV struct sprav
Void main(void)
{
SPRAV{
char fio[20];
Long num;
};
SPRAV tel[5]; /* массив структур — 5 элементов */
char fio_tek[20];
Int i;
Clrscr();
/* ввод данных в массив структур */
for(i=0; i<5; i++)
{
puts(«введите фио абонента-»);
gets(tel[i].fio);
puts(«введите его номер-»);
scanf("%ld",&tel[i].num);