Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебник 357.docx
Скачиваний:
27
Добавлен:
30.04.2022
Размер:
1.75 Mб
Скачать

12.5 Контрольные задания

1. Составить программу, которая запрашивает название футбольной команды и повторяет его на экране со словами "— это чемпион!" случайное число раз.

2. Составить программу, которая запрашивает названия трех городов и выводит на экран самое длинное название.

3. Составить программу, которая запрашивает слово, состоящее из четного числа букв и выводит на экран его первую половину, не используя оператор цикла.

4. Составить программу, которая запрашивает название футбольного клуба и печатает его на экране "столбиком".

5. Составить программу, которая запрашивает предложение и определяет число слов в нем. Слова разделены только пробелом, без знаков препинания.

6. Составить программу, которая запрашивает предложение и заменяет в нем все пробелы на символ подчеркивания.

7. Составить программу, которая удаляет из строки программы на языке Си комментарии, оформленные как //.

Лабораторная работа №13 Использование интегрированных типов данных для разработки программ и создания библиотек

Цель работы: Формирование навыков работы со структурами данных и создания собственных типов данных

Программные средства: MICROSOFT VISUAL STUDIO

13.1 Теоретические сведения

Под структурой данных в общем случае понимают множество элементов данных и множество связей между ними. Различаются простые (базовые, примитивные) структуры (типы) данных и интегрированные (структурированные, композитные, сложные). Простыми называются такие структуры данных, которые не могут быть расчленены на составные части, большие, чем биты. Интегрированные структуры данных конструируются программистом с использованием средств интеграции данных, предоставляемых языками программирования.

Интегрированный тип в языке Си – структура. Структуры применяют для логического объединения, связанных между собой данных различного типа. Структура имеет общее имя, которые связывает данные воедино.

товар на складе:

название

цена

количество

Для объявления структуры используется ключевое слово struct, за которым следует идентификатор, являющийся именем типа структуры, и список полей или элементов, заключенных в фигурные скобки.

struct ИМЯ_ТИПА_СТРУКТУРЫ{

};

Поля структуры объявляются внутри фигурных скобок как обычные переменные, массивы или другие структуры.

Объявление структуры (переменной структурного типа) может осуществляться различными способами:

1) создание переменной структурного типа без явного указания типа

struct { charname[21];

float price;

int number;} goods;

2) создание структуры особого типа с последующим задание переменной

struct PRODUCT{ //особый типPRODUCT

char name[21];

float price;

int number;};

/*объявление переменных типа PRODUCT */

struct PRODUCT prod1, prod2;

/*объявление типа и переменных этого типа в одной конструкции */

struct PRODUCT { char name[21];

float price;

int number;} prod;

3)создание собственного типа данных с использованием оператора typedef.

В языке Си имеется возможность создания собственных типов данных с помощью оператора typedef в следующей форме:

typedef переименовываемый_тип имя_нового_типа;

/* создание собственного типа данных */

typedef struct { char name[21];

float price;

int number;} PRODUCTS;

В дальнейшем использование ключевого слова struct для задания переменной для структур этого типа не потребуется, достаточно объявить:

PRODUCTS product1, product2;

Для доступа к полю структуры используется операция "."

имя_структурной_переменной.имя_поля

Или каждый элемент структуры имеет составное имя, состоящее из имени структуры и имени поля, разделенных точкой.

С составным именем можно выполнять любые действия, разрешенные для переменных того же типа, что и элемент структуры.

product1.price = 20*product2.price;

scanf("%s", product1.name);

printf("цена%.2f", product1.price);

product2.name[10]=’1’;product2.name[11]=’c’;

Для структур одного и того же типа допускается операция присваивания:

product1 = product2;

Ввод/вывод структур, как обработка выполняется поэлементно.

printf("%s цена%.2f", product1.name,product1.price);

Структуры можно инициализировать перечислением значений элементов.

PRODUCTS product1={“Pen”, 12.1, 200};

На практике эффективно использование массива структур, что позволяет организовывать базы данных.

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