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

Лабораторная работа №14 использование индексаторов при работе с массивами

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

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

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

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

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

2.Что понимается под многомерным массивом?

3.Форма записи одномерного и двумерного массива?

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

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

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

7.Какие операции разрешены над элементами массива?

8. Что такое индексатор? Для чего он используется?

9. Каково назначение get-аксессора и set-аксессора?

10. Как сформировать массив случайным образом?

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

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

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

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

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

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

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

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

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

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

Примечание:

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

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

программы.

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

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

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

Краткие теоретические сведения Объявление одномерных массивов

Массив С# -это тип, производный от класса System.Array. Поэтому все массивы С# обладают общим набором членов.

Общая структура объявления:

[<атрибуты>] [<модификаторы>] <тип> []<объявители>;

Забудем пока об атрибутах и модификаторах. Объявление одномерного массива выглядит следующим образом:

<тип>[ ] <объявители>;

Заметьте, в отличие от языка C++ квадратные скобки приписаны не к имени переменной, а к типу. Они являются неотъемлемой частью определения класса, так что запись T[] следует понимать как класс одномерный массив с элементами типа T.

Что же касается границ изменения индексов, то эта характеристика к классу не относится, она является характеристикой переменных - экземпляров, каждый из которых является одномерным массивом со своим числом элементов, задаваемых в объявителе переменной. Нумерация элементов начинается с нуля. Количество элементов задается при инициализации массива.

Как и в случае объявления простых переменных, каждый объявитель может быть именем или именем с инициализацией. В первом случае речь идет об отложенной инициализации. Нужно понимать, что при объявлении с отложенной инициализацией сам массив не формируется, а создается только ссылка на массив, имеющая неопределенное значение Null. Поэтому пока массив не будет реально создан и его элементы инициализированы, использовать его в вычислениях нельзя. Вот пример объявления трех массивов с отложенной инициализацией:

int[] a, b, c;

Чаще всего при объявлении массива используется имя с инициализацией. И опять-таки, как и в случае простых переменных, могут быть два варианта инициализации. В первом случае инициализация является явной и задается константным массивом. Вот пример:

double[] x= {5.5, 6.6, 7.7};

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

Во втором случае создание и инициализация массива выполняется в объектном стиле с вызовом конструктора массива. И это наиболее распространенная практика объявления массивов. Если мы объявляем массив фиксированного начального размера, мы обязаны использоватъ ключевое слово new. Пример:

int[] d= new int[5];

d[0]=5; d[1]=2;

Допускается сочетание обоих рассмотренных ранее вариантов:

int[] d= new int[5] {2,4,7,9,12};

В С# элементам массива автоматически присваиваются значения по умолчанию в зависимости от используемого для них типа данных. Например, для массива целых чисел всем элементам будет изначально присвоено значение 0, для массива объектов — значение NULL и т. д.

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