Доступ к элементам
Часть раздела Основы путешествия по 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
Параметр
indexуже отсчитывается с нуля: используй его напрямую какarr[index](индекс5— это 6-й элемент). Допустимые индексы находятся в диапазоне от0доsize - 1.
Попробуйте сами
#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;
}В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.
Все уроки раздела Основы
2Переменные
Типы данныхЦелое числоFloat — DoubleСимволыЛогические значенияКонстантыОсновы printfПравила именования переменныхПреобразование типов, часть 1Преобразование типов, часть 2Итоговое задание на повторение3Операторы
Арифметические операторыОператор остатка от деленияИнкремент/декрементОператоры присваиванияОператоры сравненияЛогические операторы. Часть 1Логические операторы. Часть 2Логические операторы. Часть 3Итоговое заданиеПотренируйтесь самостоятельно: Онлайн-компилятор C