Доступ к элементам
Часть раздела Fundamentals путешествия по C на Coddy — урок 54 из 63.
Массивы хранят несколько значений одного и того же типа. Мы используем позицию индекса для доступа к отдельным элементам в массиве.
В языке C индексы массивов начинаются с 0. Это означает, что первый элемент находится по индексу 0, второй — по индексу 1 и так далее.
Создайте массив целых чисел из 5 элементов:
int numbers[5] = {10, 20, 30, 40, 50};Доступ к первому элементу (индекс 0):
int firstElement = numbers[0];После выполнения вышеуказанного кода firstElement содержит:
10Доступ к третьему элементу (индекс 2):
int thirdElement = numbers[2];Это сохраняет значение 30 в thirdElement.
Попытка доступа к элементу за пределами границ массива (например, numbers[5] в нашем примере) приводит к неопределенному поведению и может вызвать сбои в работе программы.
Задание
ЛегкоНапишите функцию с именем getElement, которая:
- Принимает целочисленный массив и его размер в качестве параметров
- Принимает параметр индекса
- Если индекс допустим (находится в границах массива), она выводит элемент по этому индексу
- Если индекс недопустим (выходит за границы массива), она выводит “Index out of bounds”
Помните, что индексация в массивах начинается с 0, поэтому, если нужен 6-й элемент, вам нужно обратиться к array[5]
Шпаргалка
Массивы хранят несколько значений одного типа. Индексация массивов начинается с 0.
Создание целочисленного массива:
int numbers[5] = {10, 20, 30, 40, 50};Доступ к элементам осуществляется с помощью квадратных скобок и индекса:
int firstElement = numbers[0]; // Получает 10
int thirdElement = numbers[2]; // Получает 30Доступ к элементам за пределами границ массива приводит к неопределенному поведению и может вызвать сбои в работе программы.
Попробуйте сами
#include <stdio.h>
void getElement(int arr[], int size, int index) {
// Напишите ваш код здесь
}
int main() {
int size, index;
// Считать размер массива
scanf("%d", &size);
int arr[size];
// Считать элементы массива
for(int i = 0; i < size; i++) {
scanf("%d", &arr[i]);
}
// Считать индекс для доступа
scanf("%d", &index);
getElement(arr, size, index);
return 0;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Fundamentals
2Переменные
Типы данныхЦелые числаFloat и DoubleСимволыЛогический типКонстантыОсновы printfПравила именования переменныхПриведение типов. Часть 1Приведение типов. Часть 2Итоговое задание3Операторы
Арифметические операторыОператор остатка от деленияИнкремент и декрементОператоры присваиванияОператоры сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Логические операторы. Часть 3Задание на повторение