Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ЛР11-С++-01-мая-2012.doc
Скачиваний:
18
Добавлен:
15.09.2019
Размер:
2.5 Mб
Скачать

1.3. Обращение к элементам массива

Как вы уже знаете, массив позволяет вашим программам хранить несколько значений в одной и той же переменной. Для обращения к определенным значениям, хранящимся в массиве, используйте значение индекса, которое указывает на требуемый элемент. Например, для обращения к первому элементу массива test_scores вы должны использовать значение индекса 0. Для обращения ко второму элементу используйте индекс 1. Подобно этому, для обращения к третьему элементу используйте индекс 2. Как показано на рис. 11.1, первый элемент массива всегда имеет индекс 0, а значение индекса последнего элемента на единицу меньше размера массива:

Рис. 11.1. Как C++ индексирует элементы массива.

Говоря кратко, значение индекса указывает требуемый элемент массива.

Важно помнить, что C++ всегда использует 0 для индекса первого элемента массива, а индекс последнего элемента на единицу меньше размера массива.

Следующая программа ARRAY.CPP создает массив с именем values, который вмещает пять целочисленных значений. Далее программа присваивает элементам значения 100, 200, 300, 400 и 500:

#include <iostream.h>

void main(void)

{

   int values[5]; // Объявление массива

   values[0] = 100;

   values[1] = 200;

   values[2] = 300;

   values[3] = 400;

   values [4] = 500;

   cout << "Массив содержит следующие значения" << endl;

   cout << values [0] << ' ' << values [1] << ' ' << values [2] << ' ' << values [3] << ' '

<< values [4] << endl;

}

Как видите, программа присваивает первое значение элементу 0 (values[0]). Она также присваивает последнее значение элементу 4 (размер Массива (5) минус 1).

Все массивы C++ начинаются с элемента с индексом 0. Например, следующий оператор присваивает значение 100 первому элементу массива с именем scores:

scores[0] = 100;

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

int scores[100];

В данном случае массив представляет собой элементы от scores[0] до scores[99].

1.4. Использование индексной переменной

Если ваши программы используют массив, обычной операцией является использование индексной переменной для обращения к элементам массива. Например, предположим, что переменная i содержит значение 3, следующий оператор присваивает значение 400 элементу values[3]:

values[i] = 400;

Следующая программа SHOWARRA.CPP использует индексную переменную i внутри цикла for для вывода элементов массива. Цикл for инициализирует i нулем, так что программа может обращаться к элементу values[0]. Цикл for завершается, когда i больше 4 (последний элемент массива):

#include <iostream.h>

void main (void)

{

   int values[5]; // Объявление массива int i;

   values[0] = 100;

   values[1] = 200;

   values[2] = 300;

   values[3] = 400;

   values[4] = 500;

   cout << "Массив содержит следующие значения" << endl;

   for (i = 0; i < 5; i++) cout << values [i] << ' ';

}

Каждый раз, когда цикл for увеличивает переменную i, программа может обратиться к следующему элементу массива. Экспериментируйте с этой программой, изменяя цикл for следующим образом:

for (i = 4; i >= 0; i--) cout << values [i] << ' ';

В данном случае программа будет выводить элементы массива от большего к меньшему.