Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Теоретические сведения. 2.1. Структуры Структура – это объединенное в единое целое множество поименованных элементов данных



2.1. Структуры
Структура – это объединенное в единое целое множество поименованных элементов данных. Элементы структуры (поля) могут быть различного типа, они все должны иметь различные имена.
struct Date //определение структуры
{
int day;
int month;
int year;
};
Date birthday; //переменная типа Date
Для переменных одного и того же структурного типа определена операция присваивания. При этом происходит поэлементное копирование.
Доступ к элементам структур обеспечивается с помощью уточненных имен:


имя_структуры.имя_элемента//присваивание значений полям переменной birthday
birthday.day=11; birthday.month=3; birthday.year=1993;
Date Data;// присваивание значения переменной birthday переменной Data
Data=birthday;

Из элементов структурного типа можно организовывать массивы также как из элементов стандартных типов.
Date mas[15]; //массив структур//ввод значений массива
for(int i=0;i<15;i++)
{
cout<<”\nEnter day:”;cin>>mas[i].day;
cout<<”\nEnter month:”;cin>>mas[i].month;
cout<<”\nEnter year:”;cin>>mas[i].year;}


2. Постановка задачи
Сформировать динамический массив из элементов структурного типа. Структурный тип определен в варианте.
Распечатать сформированный массив.
Выполнить поиск элементов в массиве, удовлетворяющих заданному в варианте условию и сформировать из них новый массив.
Распечатать полученный массив.

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

Варианты

№ варианта Структура Критерий для поиска в массиве структур Задание для обработки массива строк
1 struct person { char*name; char *adres; int age; }; Имена начинаются на букву ‘A’ Добавить строку с заданным номером
2 struct date { int day; char*month; int year; }; Даты с летними месяцами Удалить строку с заданным номером
3 struct student { char*name; int kurs; float rating }; Студенты первого курса Добавить строку в конец массива
4 struct employee { char*name; float salary; int stage }; Сотрудники со стажем больше 10 лет Удалить строку из конца матрицы
5 struct pupil { char*name; int age; float rating }; Ученики со средним баллом больше 4 Добавить строку в начало массива
6 struct person { char*name; int age; }; Возраст больше 25 лет Удалить строку из начала массива
7 struct date { int day; char*month; int year; }; Даты после 2000 года Добавить К строк в конец массива
8 struct student { char*name; int kurs; float rating }; Студенты, у которых рейтинг меньше 3 Удалить К строк из конца матрицы
9 struct employee { char*name; float salary; int stage }; Сотрудники, у которых имя начинается на букву ‘Л’ Добавить К строк в начало массива
10 struct pupil { char*name; int age; float rating }; Ученики, у которых фамилия “Иванов” Удалить К строк из начала массива
11 struct person { char*name; int age; }; Возраст меньше 18 Удалить строку с номером К
12 struct date { int day; char*month; int year; }; Дата принадлежит первой декаде месяца Добавить строку с номером К
13 struct student { char*name; int kurs; float rating }; Студены пятого курса Удалить строки, начиная со строки К1 и до строки К2
14 struct employee { char*name; float salary; int stage }; Сотрудники со стажем меньше 3 лет Добавить строки, начиная со строки К1 и до строки К2
15 struct pupil { char*name; int age; float rating }; Ученики со средним баллом равным 4.5 Удалить все строки, которые начинаются на букву ‘F’




Дата публикования: 2015-10-09; Прочитано: 404 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2025 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.329 с)...