Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
aip-50-60.docx
Скачиваний:
1
Добавлен:
11.09.2019
Размер:
76.6 Кб
Скачать

Массивы.

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

Float debts [20];

объявляется, что debts — массив, состоящий из двадцати членов, или «элементов». Первый элемент массива называется debts[0], второй — debts[1], и т. д. вплоть до debts[19]. Заметим, что перечисление элементов массива начинается с 0, а не с 1. Поскольку мы объявили, что массив имеет тип float, каждому его элементу можно присвоить величину типа float.

Числа, используемые для идентификации элементов массива, называются «подстрочными индексами» или просто «индексами». Индексами должны быть целые числа, и, как уже упоминалось, индексирование начинается с 0. Элементы массива размещаются в памяти последовательно, друг за другом.

/* ввод счета */

main()

{

int i, score[10];

for (i = 0; i <= 9; i ++ )

scanf(" %d" , &a[i]); /* ввод десяти результатов */

printf(" Введены следующие результаты: \n");

for (i = 0; i <= 9; i ++ )

printf(" %5d" , a[i]); /* проверка правильности ввода */

printf("\n");

}

Понятие массив.

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

Нумерация элементов начинается с нуля, поэтому temp[0] является первым, а temp[364] последним 365-элементом массива temp.

Массивы в с.

Массивы имеют четыре основных характеристики:

  • Отдельные объекты данных в массиве называются элементами.

  • Все элементы массива должны иметь одинаковый тип данных.

  • Все элементы располагаются в памяти компьютера последовательно, и индекс первого элемента равен нулю.

  • Имя массива является постоянным значением, представляющим собой адрес первого элемента массива.

Объявление массивов.

Ниже приведены примеры объявлений массивов:

int iarray[12]; /* массив из 12 целых чисел */

char carray[20]; /* массив из 20 символов */

Для указания размера массива лучше всего использовать константы, определенные посредством #define:

#define iARRAY_MAX 20

#define fARRAY MAX 15

int iarray[iARRAY_MAX];

float farray[fARRAY MAX];

Такой подход гарантирует, что при последующих обращениях к массиву не будет превышен его указанный размер. Например, для обращения к элементам массива очень часто используется цикл for:

#include <stdio.h>

#define iARRAY_MAX 20

int iarray[iARRAY_MAX];

main ()

{

int i;

for(i = 0; i < iARRAY_MAX; i++) {

...

...

...

}

return (0);

}

Проблема ввода.

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

Язык Си предоставляет много средств для структурирования программ. С помощью операторов while и for реализуются циклы с предусловием. Второй оператор особенно подходит для циклов, включающих в себя инициализацию и коррекцию переменной. Использование операции «запятая» в цикле for позволяет инициализировать и корректировать более одной переменной. Для тех редких случаев, когда требуется использовать цикл с постусловием, язык Си предоставляет оператор dowhile. Операторы break, continue и goto обеспечивают дополнительные возможности управления ходом выполнения программы.

  1. Массивы. Инициализация массивов. Инициализация по умолчанию. Явная инициализация. Инициализация безразмерных массивов.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]