ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, опрСдСляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ

Π Π΅Ρ„Π΅Ρ€Π°Ρ‚ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

ОбъСдинСниС — это поимСнованная ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· Ρ„иксированного числа ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. МногиС синтаксичСскиС ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ свойства объСдинСний ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ со ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ. НапримСр: ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ — это простой цСлочислСнный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (пСрСчисляСмых… Π§ΠΈΡ‚Π°Ρ‚ΡŒ Π΅Ρ‰Ρ‘ >

Π’ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ…, опрСдСляСмыС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

К Ρ‚ΠΈΠΏΠ°ΠΌ Π΄Π°Π½Π½Ρ‹Ρ…, опрСдСляСмым ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ, относятся пСрСчислСния, структуры ΠΈ ΠΎΠ±ΡŠΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ.

ΠŸΠ΅Ρ€Π΅Ρ‡ΠΈΡΠ»Π΅Π½ΠΈΠ΅ — это простой цСлочислСнный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой ΡƒΠΏΠΎΡ€ΡΠ΄ΠΎΡ‡Π΅Π½Π½ΡƒΡŽ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΎΠ² (пСрСчисляСмых констант), ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ. ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρƒ назначаСтся Ρ†Π΅Π»ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅.

ОбъявлСниС пСрСчислСния производится ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

Спшп.

{.

.

};

БоздаваСмая пСрСмСнная Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ Ρ‚ΠΈΠΏ имя_пСрСчислСния ΠΈ ΡΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚Π΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π² ΡΠΏΠΈΡΠΊΠ΅ констант.

Имя пСрСчислСния ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡƒΡ‰Π΅Π½ΠΎ, Π² ΡΡ‚ΠΎΠΌ случаС ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠ΅ использованиС Π΄Π°Π½Π½ΠΎΠ³ΠΎ пСрСчислСния Π±ΡƒΠ΄Π΅Ρ‚ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Имя ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠΏΡƒΡ‰Π΅Π½ΠΎ. Π’ ΡΡ‚ΠΎΠΌ случаС Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ объявлСния пСрСчислСния пСрСмСнная ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒΡΡ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚, пСрСмСнная Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ создана ΠΏΠΎΠ·Π΄Π½Π΅Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ опрСдСлСния: enum ;

КаТдой константС ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° присваиваСтся ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠ΅ цСлочислСнноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ каТдая константа ΠΏΠΎΠ»ΡƒΡ‡Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ константы, ΡƒΠ²Π΅Π»ΠΈΡ‡Π΅Π½Π½ΠΎΠ΅ Π½Π° 1, ΠΏΡ€ΠΈ этом пСрвая константа ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 0. Однако константам ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΠ²Π°ΠΈΠ²Π°Ρ‚ΡŒΡΡ значСния ΠΈ Π² ΡΠ²Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ присваивания. НапримСр: enum selector {.

vyhod, // vyhod=0/ sozd, // sozd=l.

prosm, // prosm=2.

ud, // ud=3.

zam // zam=4.

} f; // создана пСрСмСнная f Ρ‚ΠΈΠΏΠ° selector.

enum dni {.

pn, // pn=0.

vt, // vt=l.

sr = 5, // sr=5.

cht, // cht=6.

pt = 12, // pt=12.

sb, // sb=13.

vs // vs=14.

}; II пСрСмСнная Ρ‚ΠΈΠΏΠ° dni Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ объявлСния // пСрСчислСния Π½Π΅ ΡΠΎΠ·Π΄Π°Π΅Ρ‚ся enum dni d; // объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ d Ρ‚ΠΈΠΏΠ° dni.

Над ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ пСрСчисляСмого Ρ‚ΠΈΠΏΠ° Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Ρ‹ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ:

β€’ опСрация присваивания, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

sell = sozd; d = vs;

β€’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

if (sell == sozd) …;

β€’ Π»ΡŽΠ±Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, выполняСмыС Π½Π°Π΄ Ρ‚ΠΈΠΏΠΎΠΌ int.

ИспользованиС пСрСчислСний даст Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ вмСсто числовых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ смысловыС ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Ρ‹, Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Ρ‡Π΅Π³ΠΎ облСгчаСтся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΈ ΠΏΠΎΠ²Ρ‹ΡˆΠ°Π΅Ρ‚ся Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° — это поимСнованная ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· Ρ„иксированного числа ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ². ΠšΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ структуры Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ полями.

Бинтаксис объявлСния структуры:

struct.

{.

;

;

};

НапримСр:

struct tip_rab // объявлСниС Ρ‚ΠΈΠΏΠ° структура tip_rab {.

int tabn; // элСмСнты структуры.

char fio[20]; float zarp;

}rabl; // создаСтся пСрСмСнная rabl Ρ‚ΠΈΠΏΠ°.

// struct tip_rab.

ΠΈΠ»ΠΈ:

struct tip_rab rab2, brigada[10]; // объявлСниС II ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠ° структура tip_rab.

Для доступа ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Π°ΠΌ структуры ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΎΠΏΠ΅Ρ€Π°Ρ‚ΠΎΡ€Ρ‹:

  • β€’ прямого Π²Ρ‹Π±ΠΎΡ€Π° поля структуры («.»);
  • β€’ косвСнного Π²Ρ‹Π±ΠΎΡ€Π° поля структуры («->»).

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ «.» обСспСчиваСт доступ ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Ρƒ структуры ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰Π΅ΠΉ структуру, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ rabl. tabn=120; // элСмСнту tabn структуры tip_rab // присвоСно Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 120.

ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ «->» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для доступа ΠΊ ΡΠ»Π΅ΠΌΠ΅Π½Ρ‚Ρƒ структуры ΠΏΡ€ΠΈ Π·Π°Π΄Π°Π½Π½ΠΎΠΌ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ Π½Π° ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€

// объявлСниС указатСля Π½Π° ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρƒ tip_rab struct tip_rab * pi;

II ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ значСния элСмСнта tabn структуры tip_rab i = p->iteml;

To ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅ дСйствиС ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ с ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ «.» ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ косвСнной адрСсации «*»: i = (*p).tabn;

ΠžΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ адрСса поля структуры выполняСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ адрСсации: &prab -> tabn. Π—Π΄Π΅ΡΡŒ опСрация -> ΠΈΠΌΠ΅Π΅Ρ‚ Π±ΠΎΠ»Π΅Π΅ высокий ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚, Ρ‡Π΅ΠΌ опСрация &.

Над Ρ†Π΅Π»Ρ‹ΠΌΠΈ структурами, ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠΌΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈ Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚ΠΈΠΏΠ°, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½Π° опСрация присваивания, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€: rabl = Π³Π°Π¬2 ;

Π’ΠΈΠΏ «ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°» являСтся основным Ρ‚ΠΈΠΏΠΎΠΌ Π΄Π°Π½Π½Ρ‹Ρ… Π² ΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‡Π΅ΡΠΊΠΈΡ… ΠΈ ΡƒΠΏΡ€Π°Π²Π»Π΅Π½Ρ‡Π΅ΡΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡Π°Ρ….

ОбъСдинСниС — это поимСнованная ΡΠΎΠ²ΠΎΠΊΡƒΠΏΠ½ΠΎΡΡ‚ΡŒ Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· Ρ„иксированного числа ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Ρ€Π°Π·Π½Ρ‹Ρ… Ρ‚ΠΈΠΏΠΎΠ², Π½ΠΎ Π°ΠΊΡ‚ΠΈΠ²Π½Ρ‹ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄ΠΈΠ½ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚. МногиС синтаксичСскиС ΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹Π΅ свойства объСдинСний ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‚ со ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°ΠΌΠΈ. НапримСр:

union tip_rab // объявлСниС Ρ‚ΠΈΠΏΠ° объСдинСниС.

{.

int tabn; // Ρ€Π°Π·ΠΌΠ΅Ρ€ 2 Π±Π°ΠΉΡ‚Π°.

char fio[20]; // Ρ€Π°Π·ΠΌΠ΅Ρ€ 20 Π±Π°ΠΉΡ‚ float zarp; // Ρ€Π°Π·ΠΌΠ΅Ρ€ 4 Π±Π°ΠΉΡ‚Π°.

};

union tip_rab rabl, rab2; // объявлСниС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ….

// Ρ‚ΠΈΠΏΠ° tip_rab.

Π Π°Π·ΠΌΠ΅Ρ€ объСдинСния Ρ€Π°Π²Π΅Π½ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ максимального ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π° объСдинСния, Π² ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ½ Ρ€Π°Π²Π΅Π½ 20 Π±Π°ΠΉΡ‚Π°ΠΌ. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ rabl ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² 20 Π±Π°ΠΉΡ‚Π°Ρ… Π»ΠΈΠ±ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ int, Π»ΠΈΠ±ΠΎ массив char, Π»ΠΈΠ±ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ float. ΠžΠΏΠ΅Ρ€Π°Ρ†ΠΈΡ sizeof (rabl) Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ 20, Π½ΠΎ Π² Ρ‚ΠΎΠΌ случаС, ΠΊΠΎΠ³Π΄Π° rabl содСрТит ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠΏΠ° int, 18 Π±Π°ΠΉΡ‚ΠΎΠ² ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ (Ρ‚ΡƒΠ΄Π° ΠΏΠΎΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ символы-Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΠΈ), Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎ, ΠΊΠΎΠ³Π΄Π° rabl содСрТит ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Ρ‚ΠΈΠ½Π° float, Π½Π΅ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Π½Ρ‹ΠΌΠΈ ΠΎΡΡ‚Π°ΡŽΡ‚ΡΡ 16 Π±Π°ΠΉΡ‚ΠΎΠ².

Доступ ΠΊ ΠΏΠΎΠ»ΡΠΌ объСдинСния выполняСтся Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ ΠΊ ΠΏΠΎΠ»ΡΠΌ структуры. ОбъСдинСниС ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΈΠΌ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ΠΌ.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ 5.11.1

ВвСсти свСдСния ΠΎ 15 студСнтах, Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‰ΠΈΠ΅ ΠΊΠΎΠ΄ студСнта, Π½ΠΎΠΌΠ΅Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹, ΠΊΠΎΠ΄ дисциплины ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ ΠΎΡ†Π΅Π½ΠΊΡƒ. Π Π°ΡΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ срСдний Π±Π°Π»Π», ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΉ студСнтами ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ Π³Ρ€ΡƒΠΏΠΏΡ‹, Π½ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΉ дисциплинС.

#include int main ().

{.

struct student { int num; int grup; int exam; int ball;

// структура student Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ поля: // ΠΊΠΎΠ΄ студСнта // Π½ΠΎΠΌΠ΅Ρ€ Π³Ρ€ΡƒΠΏΠΏΡ‹ // ΠΊΠΎΠ΄ дисциплины // ΠΎΡ†Π΅Π½ΠΊΠ°.

int gr, ex;

int kol =0; // kol — количСство студСнтов.

float sr = 0; // sr — срСдний Π±Π°Π»Π».

struct student st[15]; int i;

for (i = 0; i< 15; i++) // Π²Π²ΠΎΠ΄ свСдСний ΠΎ ΡΡ‚ΡƒΠ΄Π΅Π½Ρ‚Π°Ρ… {.

printf («vvedite nomer»); scanf («%d», &st[i]. num);

printf («vvedite gruppu»); scant («%d», &st[i]. grup); printf («vvedite examen»); scant («%d», &st[i]. exam); printf («vvedite ocenku»); scant («%d», &st[i]. ball);

}.

printf («vvedite kod examena»); // Π²Π²ΠΎΠ΄ ΠΊΠΎΠ΄Π° дисциплины scant («%d» / &ex);

printf («vvedite nomer gruppy»); // Π²Π²ΠΎΠ΄ Π½ΠΎΠΌΠ΅Ρ€Π° Π³Ρ€ΡƒΠΏΠΏΡ‹.

scant («%d», &gr) ;

for (i = 0; i < 10; i + +).

if ((st[i]. grup == gr) && (st[i]. exam == ex)).

{.

sr += st[i]. ball; // вычислСниС суммы Π±Π°Π»Π»ΠΎΠ² kol++; // ΠΈ ΠΊΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²Π° студСнтов.

}.

if (kol ≠ 0) // Ссли количСство студСнтов Π½Π΅ Ρ€Π°Π²Π½ΠΎ 0 printf («%f», sr / kol); // Π²Ρ‹Π²ΠΎΠ΄ срСднСго Π±Π°Π»Π»Π° else.

printf («net dannyh»); // Π²Ρ‹Π²ΠΎΠ΄ сообщСния.

// ΠΎΠ± ΠΎΡ‚сутствии Π΄Π°Π½Π½Ρ‹Ρ….

return 0;

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ