Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lr_c#_9.doc
Скачиваний:
0
Добавлен:
01.04.2025
Размер:
115.71 Кб
Скачать

Лабораторная работа №9 использование структур и ломаных массивов при работе с классами

Цель занятия:

1.Получение практических навыков в работе со структурами, динамическими и ломаными массивами.

2.Получение навыков в организации ввода/вывода значений переменных регулярных типов данных.

Вопросы для контроля

  1. Что понимается под ломаным массивом?

  2. Как обозначаются в программе элементы ломаного массива?

  3. Форма записи ломаного массива?

  4. Обращение к элементам ломаного массива?

  5. Как создается в программе ломаный массив?

  6. Как организуется в программе ввод ломаного массива?

  7. Как организуется в программе вывод ломаного массива?

  8. Как описывается динамический массив?

  9. Понятие структуры.

  10. Форма записи структуры.

  11. Как можно описать идентификаторы типа структура.

  12. Привести примеры описания идентификаторов типа структура.

  13. Как производится обращение к элементам структуры.

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

1. Выполнить задание по вариантам, указанным преподавателем (таблица 9.1.).

Содержание отчета

1.Постановка задачи.

2.Текст программы.

3.Таблица данных и результатов.

Порядок выполнения работы

1.Включить ПК.

2.Загрузить систему Microsoft Visual Studio C#

3.Выполнить задание по вариантам, указанным преподавателем (таблица 9.1.).

Примечание:

При составлении программы руководствоваться

методическими указаниями и примером составления

программы.

4.Ввести по мере выполнения программы исходные данные. Результаты

занести в отчет.

5.Закончить работу с системой Microsoft Visual Studio C# без сохранения программы.

Краткие теоретические сведения

ЛОМАНЫЙ МАССИВ

Taкой массив содержит в качестве внутренних элементов некоторое количество внутренних массивов, каждый из которых может иметь свой внутренний уникальный размер.

Есть некоторые особенности в объявлении и инициализации таких массивов. Если при объявлении типа многомерных массивов для указания размерности использовались запятые, то для изрезанных массивов применяется более ясная символика - совокупности пар квадратных скобок; например, int[][] задает массив, элементы которого - одномерные массивы элементов типа int.

Сложнее с созданием самих массивов и их инициализацией. Здесь нельзя вызвать конструктор new int[3][5], поскольку он не задает изрезанный массив. Фактически нужно вызывать конструктор для каждого массива на самом нижнем уровне. В этом и состоит сложность объявления таких массивов.

int[][] jagger1 = new int[3][]

{

new int[4],

new int[2],

new int[3]

};

СТРУКТУРЫ

В С# структура — это особый тип класса, который имеет тип по значению, а не по ссылке. Поскольку структура размещается в стеке, она может создаваться и копироваться более эффективно, чем класс.

Во многих отношениях структуры С# можно рассматривать как некую особую разновидность классов, С классами структуры роднит многое: для структур можно определять конструкторы (только принимающие параметры), структуры могут реализовывать интерфейсы, структуры могут содержать любое количество внутренних членов. Для структур С# не существует единого базового класса (тип System. Structure в С# не предусмотрен), однако косвенно все структуры являются производными от типа ValueType.

Форма записи:

[МодификаторДоступа] struct ИмяСтруктуры {СписокДанных}

где СписокДанных имеет вид

[МодификаторДоступа] СпецификаторТипа СписокИдентификаторов1;

[МодификаторДоступа] СпецификаторТипа СписокИдентификаторовN;

Отметим, что для инициализации структуры используется оператор new, несмотря на то, что структуры являются типами по значению.

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