Присвоение значений целой структуре

Подскажите пожалуйста, как присвоить значения всей структуре переменных целиком.

Допустим, имею структуру

однотипных

переменных в кол-ве 10 шт.

Инициализирую структуру - без проблем,

Использую структуру - без проблем.

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

Вот пример кода:

C++Выделить код

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21

struct {int a, b, c;} Data; // Структура данных из переменных, всего их будет 10
 
void Send_Data (int local_data)
{
    // Программа отправки данных
}
 
int main(void)
{
    char x; // Условие присвоение данных структуре
 
    if (x == 1) Data = {11, 21, 31};    // Присвоение значений в 1-м случае
    if (x == 2) Data = {12, 22, 32};    // Присвоение значений в 2-м случае
    if (x == 3) Data = {13, 23, 33};    // Присвоение значений в 3-м случае
    // И так далее...
 
    // Далее отправка данных по отдельности:
    Send_Data (Data.a); // Отправка данных 1-й переменной
    Send_Data (Data.b); // Отправка данных 2-й переменной
    Send_Data (Data.c); // Отправка данных 3-й переменной
    // И так далее...

Пробовать модифицировать эти строки по всякому, бесполезно, компилятор ничё не принимает.

Само собой, я могу присвоить значения по отдельности каждым переменным в структуре, но тогда код будет нерациональным

Как нужно правильно? Есть какой другой способ?