Массивы структур

Довольно часто структуры используются именно в виде массивов структур. Для объявления такого массива следует сначала определить саму структуру, а затем объявить массив переменных данного типа. Например, для объявления массива структур типа MyType следует написать:

const int Nmax = 10;

// объявление структуры

struct MyType {

float A;

double B;

int C[2];

};

// объявление массива структур

MyType Mas[Nmax];

В результате получаем массив структур из 10 элементов, каждый из которых имеет тот же вид, что и переменная V в предыдущих примерах:

Для доступа к отдельным элементам массива структур используется операция индексации как и для массивов стандартных типов данных. Она имеет следующий синтаксис:

ИмяМассиваСтруктур [номер элемента]. ИмяПоля

Ниже приведён блок ввода массива структур с клавиатуры с выводом на экран подсказки для каждого поля:

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

{

printf (" A = ");

scanf ("%f", &Mas[i].A);

printf (" B = ");

scanf ("%lf", &Mas[i].B);

for(int j =; j < 2; j++)

{

printf (" C[%d] = ", i+1);

scanf ("%d", &Mas[i].C[j]);

}

}

Выражение Mas[i].C[j] означает обращение к j-му элементу массива C, который является полем структурной переменной Mas[i].

Как и массивы стандартных типов, массивы структур индексируются с нуля.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: