Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
LAB_ZI.doc
Скачиваний:
5
Добавлен:
13.11.2019
Размер:
1.85 Mб
Скачать

2 Питання вхідного контролю

1 Що називається динамічним розподілом пам’яті?

2 Коли виділяється динамічна пам’ять?

3 З допомогою яких функцій виділяється динамічна пам’ять?

4 З допомогою якої функції звільняється пам’ять?

5 Яка функція розширює виділену динамічну пам’ять?

3 Постановка завдання

Описати масив розмірністю 3, елементами якого є структура, задана в індивідуальному завданні. Сформувати динамічний масив і заповнити його елементами заданого масиву, вивести новий динамічний масив на екран. Звільнити виділену пам'ять за допомогою функції free().

4 Варіанти індивідуальних завдань

1 Структура "Абітурієнт": прізвище, ім'я, по батькові, рік народження, оцінки вступних іспитів (3), середній бал атестата.

2 Структура "Співробітник": прізвище, ім'я, по батькові, посада, рік народження, заробітна плата.

3 Структура "Держава": назва, столиця, чисельність населення, займана площа.

4 Структура "Людина": прізвище, ім'я, по батькові, домашня адреса, номер телефону, вік.

5 Структура "Людина": прізвище, ім'я, по батькові, рік народження, ріст.

6 Структура "Школяр": прізвище, ім'я, по батькові, клас, оцінки по предметах (математика, фізика, література).

7 Структура "Студент": прізвище, ім'я, по батькові, домашня адреса, група, рейтинг.

8 Структура "Покупець": прізвище, ім'я, по батькові, домашня адреса, номер телефону, номер кредитної картки

9 Структура "Пацієнт": прізвище, ім'я, по батькові, домашня адреса, номер медичної карти, номер страхового поліса.

10 Структура "Інформація": носій, об’єм, назва, автор.

11 Структура "Відеокасета": назва фільму, режисер, тривалість, ціна.

12 Структура "Музичний диск": назва, автор, тривалість, ціна.

13 Структура "Спортивна команда": назва, місто, кількість гравців, кількість набраних очок.

14 Структура "Стадіон":назва, адреса, місткість, види спорту.

15 Структура "Автомобіль": марка, рік випуску, ціна, колір.

16 Структура "Власник автомобіля": прізвище, ім'я, по батькові, номер автомобіля, телефон, номер техпаспорта.

5 Методичні вказівки

1 Перед написанням програми переглянути теоретичний матеріал і приклади програм, що ілюструють масиви структур. Визначити структуру, задану у варіанті. Описати і задати масив, елементами якого є структура заданого типу.

2 Сформувати динамічний масив за допомогою бібліотечних функцій malloc() (calloc()), розмір якого рівний заданому масиву структурного типу.

3 Заповнити сформований динамічний масив елементами заданого масиву.

4 Елементи сформованого масиву вивести на екран.

5Звільнити виділену пам'ять функцією free().

6 Приклад розв’язку завдання

Описати масив розмірністю 3, елементами якого є структура "Стадіон" з полями: назва, рік будівлі, кількість площадок; види спорту. Сформувати динамічний масив і заповнити його елементами заданого масиву, вивести новий динамічний масив на екран. Звільнити виділену пам'ять функцією free().

Текст програми:

#include <stdio.h>

#include <stdlib.h>

int k, m;

void main() {

struct stadion {

char nazva[20];

int rik;

int kp;

char vsporty[20];}

*ptr1, nst1[3]= {{ "UKRAINE",1970, 12, "FYTBOL"},

{ "ARENADON",1980, 10, "BOKS"},

{"DNIPRO",1990, 10, "FYTBOL"}};

/*Виділяється 3*sizeof (struct stadion) пам’яті */

ptr1= malloc(3*sizeof (struct stadion));

for (k=0; k<3; k=k+1)

{ptr1[k]=nst1[k];

printf("k=%s\t%d\t%d\t%s\n", ptr1[k].nazva, ptr1[k].rik , ptr1[k].kp ,

ptr1[k]. vsporty); }

free (ptr1);

}

Результати роботи програми

k=UKRAINE 1970 12 FYTBOL

k=ARENADON 1980 10 BOKS

k=DNIPRO 1990 10 FYTBOL

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]