русс | укр

Мови програмуванняВідео уроки php mysqlПаскальСіАсемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование


Linux Unix Алгоритмічні мови Архітектура мікроконтролерів Введення в розробку розподілених інформаційних систем Дискретна математика Інформаційне обслуговування користувачів Інформація та моделювання в управлінні виробництвом Комп'ютерна графіка Лекції


Приклад 2.


Дата додавання: 2014-05-08; переглядів: 1065.


 

В матриці 5*4 знайти суму елементів кожного рядка

 
 
#include <iostream.h> #include <iomanip.h> void main() { int i,j; int m[5][4], Sum; cout <<"Vvedi matricu 5x4 \n"; for (i=0;i<=4;i++) for (j=0;j<=3;j++) cin>>m[i][j]; for (i=0;i<=4;i++) { Sum=0; for (j=0;j<=3;j++) Sum+=m[i][j]; cout<<"Summa elementov "<<i<<" stroki= "<<setw(5)<<Sum<<endl; } }  

 

 


 


Структури С++

1) Визначення і опис структур

2) Визначення синоніму типу структури

3) Вкладені структури

4) Операції над структурами

5) Ініціалізація структур

6) Розробка програм з використанням структур

7) Питання для самоперевірки

 

Визначення і опис структур

 

Cтруктура - це складний тип даних, в який входять елементи будь-яких типів, за винятком функцій. Елементи структури називаються полями. Кожне поле характеризується іменем і типом.

Формат опису структури:

struct <ім¢я структури>

{

<тип поля 1> <ім¢я поля 1>;

<тип поля 2> <ім¢я поля 2>;

. . .

<тип поля n> <ім¢я поля n>;

};

<ім¢я структури> - це тег (позначення) структури, може розглядатись як новий тип даних, визначений користувачем. Щоб використовувати структуру в програмі, необхідно визначити змінну цього типу. Наприклад:

struct STUDENT

{ char fio[20];

int God_rogd;

char pol;

char grupa[15];

};

STUDENT stud1,stud2;

 

Змінні можна описати разом з описом структури. Наприклад:

struct STUDENT

{ char fio[20];

int God_rogd;

char pol;

char grupa[15];

}stud1,stud2;

 

Для доступу до елементів полів використовується складне ім¢я, що складається з імені змінної типу структури і імені поля, розділених крапкою. Наприклад, stud1.fio, stud2.God_rogd. В цьому випадку ім¢я структури (STUDENT) вказувати не обов¢язково, тобто допускається опис

struct

{ char fio[20];

int God_rogd;

char pol;

char grupa[15];

}stud1,stud2;

 

Структура може бути описана в поточному блоці або за його межами. В першому випадку структура буде локальною для поточного блоку і другому - глобальною для всіх блоків, розміщених після опису.

 

Визначення синоніму типу структури

 

Для визначення свого типу можна використати оператор typedef.

typedef struct STUDENT

{ char fio[20];

int God_rogd;

char pol;

char grupa[15];

}ТSTUDENT;

В приведеному описі ТSTUDENT є новим типом даних, а STUDENT залишається ім¢ям структури, яке можна опустити:

typedef struct

{ char fio[20];

int God_rogd;

char pol;

char grupa[15];

}ТSTUDENT;

Опис змінних: ТSTUDENT stud1,stud2;

 

Вкладені структури

 

Можна використовувати вкладені структури, описуючи їх до опису головної структури або в її описі. Наприклад, дату народження опишемо як структуру, що складається з трьох цілих значень: число, місяць, рік.

Перший випадок; попередній опис:

Struct data

{ int d,m,g;};

struct STUDENT

{ char fio[20];

data Data_rogd;

char pol;

char grupa[15];

}stud1,stud2;

 

Другий випадок: опис в структурі:

struct STUDENT

{ char fio[20];

Struct {int d,m,g;} Data_rogd;

char pol;

char grupa[15];

}stud1,stud2;

 

І в першому і в другому випадку для доступу до елементів вкладеної структури використовуються операції доступу до елементів структури, тобто складні імена, що складаються з імені структурної змінної, імені структурного поля і імені поля вкладеної структури, розділених крапкою: stud1.Data_rogd.d, stud1.Data_rogd.d.

 

 

Операції над структурами

 

Допустимими операціями для структур є:

– операція присвоєння для однотипних структур. Наприклад, stud1=stud2;

– операція адреси (&) структури;

– операція sizeof для визначення розміру структури;

– операція доступу до елементів структури.

 

Ініціалізація структур

 

Структури можуть бути ініціалізовані таким же чином, як і масиви. Наприклад:

ТSTUDENT stud1= {“Іванов І.І”,1987, ‘м’,”ПМ 04 1/9” };

ТSTUDENT stud2= {“Петрова А.А.” }; Не заданим значенням присвоюється нульове значення.

 


<== попередня лекція | наступна лекція ==>
Розробка програм з використанням масивів | Розробка програм з використанням структур


Онлайн система числення Калькулятор онлайн звичайний Науковий калькулятор онлайн