Массив – это набор элементов, которые имеют одинаковый тип и хранятся в памяти строго последовательно. Обращение к элементу массива осуществляется по имени массива и номеру элемента в этом массиве. Номер элемента в массиве называется индексом. В языке Си индекс первого элемента равен 0, а индекс последнего – N-1, где N – это размер массива. При объявлении массива указывается тип его элементов, имя и размер:
<Тип> <Имя>[<Размер>];
В качестве типа элементов массива можно указывать любой существующий в языке Си тип. Имя массива следует выбирать, чтобы оно отражало суть содержимого массива. Например, абстрактный числовой массив можно назвать numbers, массив возрастов – ages, а массив весов – weights. Размер массива должен быть константой, а не переменной, поэтому существуют три способа объявления массива:
//Способ 1.
int numbers[10];
//Способ 2.
const int n = 10;
int numbers[n];
//Способ 3.
#define SIZE 10
int numbers[SIZE];
Поскольку размер массива не может быть переменной, то следующая запись недопустима и вызовет ошибку компиляции:
int size;
cout << "Введите размер массива:\n";
cin >> size;
//Ошибка
int numbers[size];
Размер массива указывать необязательно, если при его объявлении выполняется инициализация:
int ages[] = {23, 45, 56, 78, 54};
Каждый из элементов массива представляет собой переменную, другими словами, именованную ячейку памяти. Отличие элемента массива от обычной переменной заключается лишь в том, что обращение к обычной переменной происходит по ее имени, а к элементу массива обращаются по имени массива и индексу элемента в этом массива. Таким образом, элементу массива можно присвоить некоторое значение так же, как и переменной:
numbers[0] = 99;
Кроме того, можно ввести значение элемента массива с клавиатуры при помощи функций ввода