Одномерные массивы

В программе одномерный массив объявляется следующим образом:

типID_массива [размер] = {список начальных значений};

тип – тип элементов массива;

размер – количество элементов в массиве.

Список начальных значений используется при необходимости задать начальные значения (инициализировать элементы массива), он может отсутствовать. Значения в списке разделяются запятыми. (Такое задание списка элементов массива допустимо только при его инициализации и недопустимо в операции присваивания).

 

Примеры объявления массива:

 

int a[6];

double x[5]={2, 3.5, -4.5e3, 2.34, -.7 };

 

Если в группе {…} список значений короче, то оставшимся элементам присваивается 0.

 

Обращение к конкретному элементу массива в программе осуществляется путем записи имени массива и за ним в квадратных скобках - номера элемента, например:

a[0]=1;

a[i]++;

a[3]=a[i]+a[i+1];

Индексы массивов в языке Си начинаются с 0, т.е. в массиве x первый элемент: x[0], второй – x[1], … пятый – x[4].

 

Размер массива может задаваться только константой или константным выражением. Нельзя задавать массив переменного размера. Для этого существует отдельный механизм – динамическое выделение памяти.

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

 

int a[100], n, i;

M: cout<<"Vvedite kolichestvo elementov (ne bolshe 100)";

cin>>n;

if (n>100) goto M;

cout<<"Vvedite elementy:n";

for (i=0; i<n; i++)

cin >> a[i];

 

Внимание. В языке Си с целью повышения быстродействия программы отсутствует механизм контроля выхода за границы индексов массивов. При необходимости такой механизм должен быть запрограммирован явно.