Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Proga_shpory.docx
Скачиваний:
44
Добавлен:
25.03.2015
Размер:
102.57 Кб
Скачать

28) Одномерные массивы. Описание массивов, их инициализация.

Массив – это структурированный тип данных, представляющий фиксированную последовательность величин одного типа. Массивы бывают одномерные и многомерные. Одномерные массив Описание массива:

Тип имя_массива [количество элементов] [={знач1,знач2,…}];

int A[6]={1,2};

double B[5];

Доступ к элементам массива осуществляется через задание его индексов. Первый элемент имеет нулевой индекс.

Имя_массива[индекс] . Индекс меняется от 0 до количества-1

A[0] - первый элемент A[i] - i-й элемент A[n-1] - последний элемент

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

int k[3] = {4,5,0}; int k[ ] = {4,5,0};

Стандартные алгоритмы работы с массивами

Ввод.

int n, A[30];

…………

for (int i=0;i<n;i++) {

printf(“\n A[%d]=”,i);

scanf(“%d”,&a[i]); }

Или без вывода подсказки

for (int i=0;i<n;i++)

scanf(“%d”,&a[i]);

Вывод.

int n, A[30];

//вывод в столбик с указанием имени элемента

for (int i=0;i<n;i++) {

printf(“\n A[%d]=%d”,i,A[i]);

}

29) Связь одномерных массивов с указателями. Динамическое выделение памяти для одномерных массивов.

Имя одномерного массива является указателем на нулевой элемент массива.

A[0] A[1] … A[n-1] - элементы A – константа-указатель на нулевой элемент.

В А хранится адрес A[0] : A ← &A[0]

A[i]  *(A+i)

(A – адрес нулевого элемента + i – смещение на i-ый элемент)

A[0]  *(A+0)  *A A[i]  *(A+i)

Выделение памяти под одномерный массив int *p;

p=new int [n]; //выделение памяти для n элементов

Динамическое выделение памяти под одномерные массивы

Выделения памяти

new тип[количество]

результат (адрес начала выделенной памяти) помещается в указатель.

Выделение памяти под одну переменную:

int *p;

p=new int; // *p обращение к значению переменной

Под массив

int *y;

y=new int[n];

Удаление памяти

delete указатель

или

delete [] указатель;

delete p;

delete [] y;

Динамическая память выделяется в куче.

30) Одномерные массивы. Описание массивов, их инициализация.

Массив – это структурированный тип данных, представляющий фиксированную последовательность величин одного типа. Массивы бывают одномерные и многомерные. Одномерные массив Описание массива:

Тип имя_массива [количество элементов] [={знач1,знач2,…}];

int A[6]={1,2};

double B[5];

Доступ к элементам массива осуществляется через задание его индексов. Первый элемент имеет нулевой индекс.

Имя_массива[индекс] . Индекс меняется от 0 до количества-1

A[0] - первый элемент A[i] - i-й элемент A[n-1] - последний элемент

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

int k[3] = {4,5,0}; int k[ ] = {4,5,0};

Стандартные алгоритмы работы с массивами

Ввод.

int n, A[30];

…………

for (int i=0;i<n;i++) {

printf(“\n A[%d]=”,i);

scanf(“%d”,&a[i]); }

Или без вывода подсказки

for (int i=0;i<n;i++)

scanf(“%d”,&a[i]);

Вывод.

int n, A[30];

//вывод в столбик с указанием имени элемента

for (int i=0;i<n;i++) {

printf(“\n A[%d]=%d”,i,A[i]);

}

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