Главная

Популярная публикация

Научная публикация

Случайная публикация

Обратная связь

ТОР 5 статей:

Методические подходы к анализу финансового состояния предприятия

Проблема периодизации русской литературы ХХ века. Краткая характеристика второй половины ХХ века

Ценовые и неценовые факторы

Характеристика шлифовальных кругов и ее маркировка

Служебные части речи. Предлог. Союз. Частицы

КАТЕГОРИИ:






Определение массива




Лабораторная работа №8

МАССИВЫ И СТРОКИ

Переменные, с которыми вы имели дело до сих пор, могут хранить только одно значение в каждый момент времени. То есть, если вы, например, хотите узнать среднее арифметическое для 31 значения температуры, вам придется 31 раз ввести значение переменной, по одному за цикл, используя аккумулятор для подсчета суммы. При этом, когда вводится второе значение, первое теряется, когда вводится третье — утрачивается второе, и так далее. Если в программе есть соответствующие инструкции, вы будете знать сумму этих чисел и их среднее арифметическое, но исходные значения будут потеряны.

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

В этой работе рассматривается как внести значения в специальную переменную, которая называется массивом (array). Кроме того, здесь подробно описывается работа со строковыми переменными.

Массивы

Представьте себе группу людей, стоящих в очереди, например, перед входом в кинотеатр. Единственная вещь, которая объединяет этих людей, — это то, что они стоят в одной очереди. Тот факт, что кто-то из них занимает первую позицию, не говорит нам ничего об этом человеке. У нас нет оснований думать, что он проворнее, выше, или богаче, чем любой другой из стоящих за ним.

Массив можно представить себе в виде некоего подобия очереди. Массив — это множество значений, которыми можно оперировать как группой. Каждый элемент или значение в массиве является отдельной переменной, и с ней можно обращаться, как с обычной переменной, но так как эти переменные собраны в массив, их также можно трактовать как общность. И так же, как место в очереди не дает нам никакой дополнительной информации о человеке, который его занимает, положение элемента массива не имеет никакого отношения к присвоенному ему значению.

Вы уже создавали и использовали массивы в форме строк. Строка и в самом деле является массивом, состоящим из отдельных символов. При отображении строки сообщения на дисплее функция puts() обращается с массивом как с группой, но к каждому символу можно обратиться и в отдельности.

Работа с массивом осуществляется поэтапно. Во-первых, необходимо определить массив как переменную, во-вторых, в массив надо ввести значения, и, наконец, можно использовать массив в соответствии с требованиями логики программы.

Определение массива

Для определения массива необходимо указать типы значений, которые он содержит, и максимальное количество элементов, которое может быть в него записано. Синтаксис определения массива показан на рис.1. Для того чтобы создать массив, содержащий, например, 31 целое число, надо написать определение:

int temps[31];

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

При определении массива одновременно определяются и его отдельные элементы, как это показано на рис. 2. К первому элементу массива temps обращаются как к temps[0], ко второму — как к temps[1], к третьему — как к temps[2] и так далее. Заметьте, что нумерация элементов массива начинается с 0, так что массив, состоящий из пяти элементов, показан на рисунке как массив, содержащий элементы с номерами от 0 до 4. Элемент с номером temp[5] не существует. Число, заключенное в квадратные скобки, называется индексом (subscript), и про элементы массива можно говорить как про «нулевой элемент массива temps», «первый элемент массива temps» и так далее.


Рис. 1. Синтаксис определения массива

 


Рис. 2. При определении массива также определяются и составляющие его элементы

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

Определение строковой переменной на самом деле является определением массива символьных элементов:

char name[5];

С помощью функций gets() и puts() можно вводить и выводить весь массив символьных данных как единое целое, но при работе с другими типами данных эти операции выполняются с каждым элементом массива отдельно.






Не нашли, что искали? Воспользуйтесь поиском:

vikidalka.ru - 2015-2024 год. Все права принадлежат их авторам! Нарушение авторских прав | Нарушение персональных данных