
- •5.1. Что такое массив?
- •Int myArray[100];
- •5.2. Многомерные массивы
- •5.3. Инициализация массивов
- •5.4. Определение числа элементов массива
- •5.5. Операции с массивами
- •5.5.1. Ввод и вывод массива
- •5.5.2. Поиск минимального (максимального) элемента массива
- •5.5.3. Поиск в массиве заданного элемента
- •5.5.4. Сортировка массива
- •5.6. Строки
- •5.6.1. Основы техники строк
- •5.6.2. Некоторые библиотечные функции обработки строк
- •5.6.3. Примеры обработки строк
- •5.7. Массивы строк
- •5.7.1. Пример использования массива строк
Лабораторная работа 5. Операции с массивами и строками
5.1. Что такое массив?
Массив — это набор элементов одного типа, доступ к которым осуществляется по номеру (или индексу).
Массив, как и любая переменная программы, перед использованием должен быть объявлен в разделе объявления переменных. В общем виде инструкция объявления массива выглядит следующим образом:
тип-элемента имя-массива [описание-диапазона];
Номер элемента массива должен находиться в заданном диапазоне. Нумерация элементов в массиве всегда начинается с нуля.
Тип элемента определяет единый тип данных для каждого элемента массива. Имя массива — это пользовательский идентификатор (название переменной), который хранит ссылку на массив.
Массив с одним измерением называют одномерным массивом или вектором.
В следующем примере описывается массив mуАггау из 100 целых чисел (элементов типа int), в котором первый элемент будет иметь номер 0, а последний — номер 99:
int myArray [100];
Для доступа к элементу массива указывают имя переменной (массива соответствующего типа) и вслед за ним — индекс в квадратных скобках. В качестве индекса может выступать произвольное выражение языка C++, значение которого укладывается в диапазон, заданный при описании массива. Например:
Int myArray[100];
int N;
myArrау[0] = 10;
N = 5;
myArray[N+1] = 500;
mуАггау[99] = myArray[N-2]-50;
5.2. Многомерные массивы
Многомерный массив — это массив, имеющий несколько измерений.
Каждое измерение выделяется отдельной парой квадратных скобок и характеризуется собственным диапазоном или размером (числом элементов):
тип-элемента имя-массива[описание-диапазона-1]
описание-диапазона-2]...[описание диапазона-N];
Матрица — это массив с двумя измерениями (двумерный).
Матрица фактически представляет собой двумерную таблицу, первое измерение которой считают, например, строкой, а второе — столбцом.
Запись
double mtx [10][20];
задает таблицу размером 10x20 элементов (дробных значений).
При доступе к элементу многомерного массива значения индексов перечисляют в квадратных скобках — каждый индекс в своих скобках. Например:
double mtx [10][20];
mtx[5][2] = 3.14;
mtx[9][19] = -0.007;
5.3. Инициализация массивов
В момент определения массива в него можно сразу занести начальные значение элементов. Для этого следом за описанием массива ставится символ «=» и задается набор значений элементов в фигурных скобках. Число элементов массива в квадратных скобках можно не вводить — оно определяется автоматически числом элементов инициализации. Например:
int myArray[] = { 1, 2, 4, 8, 16 };
Такой командой объявлена переменная-массив myArray из пяти элементов.
При инициализации многомерных массивов значения по каждому измерению выделяются в отдельную последовательность, охваченную фигурными скобками. Сначала размещаются элементы, входящие в первое измерение, затем элементы второго измерения, и так далее. Может быть опущено число элементов только по первому измерению, для остальных измерений оно должно быть задано явно.
Например:
double mtx [] [3] = {
{3.14, 2.87, 0.01},
{-2.34, 100.0, +5.67}
};
Массив mtx представляет собой матрицу из двух строк по три элемента в каждой.
Ключевое слово const позволяет превратить массив в константу:
const int mуАггау[] = { 1, 2, 4, 8, 16 };
Теперь к элементам массива mуАггау можно обращаться, но нельзя менять их значения.