Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Struct inf_d




{

long int ob;

int vr;

int kod;

double cena;

} drive[25];

 

або окремим рядком:

 

inf_d drive[25];

 

Структури зручно записувати на диск

 

Приклад:

 

#include <iostream>

using namespace std;

 

#include <conio.h>

 

struct inf_d //Глобальне визначення

{

long int ob;

int vr;

int kod;

double cena;

};

 

 

inf_d v_dan()

{

inf_d disk;

cin >> disk.ob;

cin >> disk.vr;

cin >> disk.kod;

cin >> disk.cena;

return disk;

}

 

void menu()

{

system("cls"); // Очищення екрану

cout << "1. введення даних про дисковод\n";

cout << "2. Відображення даних\n";

cout << "3. Вихід\n";

}

void pros(inf_d disk[25], int num)

{

for(int ctr = 0; ctr < num; ctr++)

{

cout <<"\n" << disk[ctr].ob ;

cout <<"\n" << disk[ctr].vr;

cout <<"\n" << disk[ctr].kod;

cout <<"\n" << disk[ctr].cena<<"\n";

}

getch();

}

 

void main ()

{

inf_d disk[25];

int ans;

int num = 0;

do

{

do

{

menu();

cin >> ans;

} while ((ans < 1) || (ans>3));

 

switch(ans)

{

case 1:

disk[num] = v_dan();

num++;

break;

case 2:

pros(disk,num);

break;

default:

break;

}

}

while(ans!=3);

}

 

У даному прикладі для очищення екрану використовується системна функція system з параметром "cls" (system("cls")). Для очікування введення клавіші <Enter> у режимі перегляду даних використовується функція getch. Ця функція знаходиться у заголовному файлі <conio.h>.

 

Використання масивів, як елементів структур

 

Дано структури платіжних відомостей:

 

Struct pl

{

char name[25]; //ім’я службовця

char otd[10]; //назва відділу

double zar; //зарплата

} mas_pl[100];

 

Припустимо необхідно записати в символьну змінну ініціал ім’я 25-го службовця:

 

char iniz;

iniz = pl[24].name[0];

 

Якщо необхідно змінити ім’я службовця, тоді:

 

strcpy(pl[24].name, "Іван Петрович");

 

Приклад. Книгарня створює каталог книг.

 

#include <iostream>

using namespace std;

 

#include <conio.h>

 

Struct inven

{

char title[25]; //заголовок

char pub[19]; //Дата публікації

char avt[20]; //Ім’я автора

float cena;

};

 

void main()

{

inven kn[100];

int total = 0;

char ans;

do //введення даних

{

cin>>kn[total].title;

cin>>kn[total].pub;

cin>>kn[total].avt;

cin >> kn[total].cena;

cout << "\nБудете вводити? (Y/N) ";

ans = getch();

ans = toupper(ans);

if(ans == 'Y')

{

total++;

cout<<"Y\n";

continue;

}

}

while(ans != 'N');

}

 

Приклад запису на диск масиву структур:

Така функція може бути частиною великої програми, що одержує дані досліджень у масив структур від користувача. Дана функція приймає ім’я масиву та число елементів. Функція write записує масив на диск.

 

#include <iostream>

using namespace std;

 

ofstream fp;

 


Поделиться:

Дата добавления: 2014-12-30; просмотров: 110; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты