Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
programmirovanie / ОПиАЯ_№3_4_слайды.doc
Скачиваний:
33
Добавлен:
03.03.2016
Размер:
147.46 Кб
Скачать

Индексы массивов.

Индексирование используется для отличия отдельных элементов, а также для обеспечения доступа к отдельным элементам массива.

В качестве индекса можно использовать любое выражение типа int. Однако для обращения к элементам массива значение индекса должно лежать между нулём и значением, на единицу меньшим объявленного размера массива.

Важно представлять себе разницу между значением индекса массива и значением элемента массива.

Рассмотрим первоначальный массив

x[0] x[1] x[2] x[3] x[4] x[5] x[6] x[7]

Индексированная переменная x[i] ссылается на отдельный элемент этого массива. Если значение i равно 0, значение индекса равно 0, обращаемся к элементу x[0]. В данном случае x[0] равно 16,0.

Если i равно 2, значение индекса будет 2, а значение x[i] будет равно 6,0.

Если i равно 8, индекс равен 8 и в этом случае мы не в состоянии указать значение x[i], поскольку значение индекса лежит вне допустимого диапазона.

В таблице представлены примеры операторов с использованием массива, приведенного выше. Переменная i - типа int со значением 5.

Оператор

Пояснение

printf(“%d %lf”, 4, x[4]);

Выводит 4 и 2,5 (значение x[4])

printf(“%d %lf”, i, x[i]);

Выводит 5 и 12,0 (значение x[5])

printf(“%lf”, x[i]+1);

Выводит 13,0 (значение x[5] плюс 1)

printf(“%lf”, x[i]+i);

Выводит 17,0 (значение x[5] плюс 5)

printf(“%lf”, x[i+1]);

Выводит 14,0 (значение x[6])

printf(“%lf”, x[i+i]);

Недопустимая попытка вывода x[10]

printf(“%lf”, x[2*i]);

Недопустимая попытка вывода x[10]

printf(“%lf”, x[2*i-3]);

Выводит -54,5 (значение x[7])

printf(“%lf”, x[i++]);

Выводит 12,0 (значение x[5]) затем присваивает значение 6 переменной i

printf(“%lf”, x[i--]);

Присваивает 5(6-1) переменной I, затем выводит 14,0 (значение x[5])

x[i-1] = x[i]

Присваивает 12,0(значение x[5] x[4])

x[i] = x[i+1]

Присваивает 14,0(значение x[6] x[5])

x[i]-1 = x[i]

Неправильное выражение присваивания

Индексы в массивах

СИНТАКСИС: aname[индекс]

ПРИМЕР: b[i+1]

ОПИСАНИЕ: Индекс может быть любым выражением типа int. Каждый раз , когда в программе встречается индексированная переменная, сначала определяется значение индекса, и по этому значению определяется, к какому элементу массива происходит обращение.

ПРИМЕЧАНИЕ: Ответственность за проверку нахождения индекса в диапазоне, заданном при объявлении массива, возлагается на программиста. При неверном значении индекса происходит обращение к ячейке памяти, не относящейся к этому массиву. Обычно это приводит к побочным эффектам в программе, причину которых программисту сложно обнаружить.

Соседние файлы в папке programmirovanie