Құрылымдар массиві
User
User
14
Қазақстан Республикасының Бiлiм және Fылым Министрлiгi
Қ.Жұбанов атындағы Ақтөбе Мемлекеттiк Университетi
Физика-математика факультетi
Ақпараттық жүйелер кафедрасы
Курстық жұмыс
Тақырыбы: «С++те құрылымдар және бiрiктiрулермен жұмыс»
Орындаған: 2ИСКО3 тобының студентi, Ибрагимова Р.М.
Жетекшi: АЖ кафедрасының аға оқытушысы, Алиева А.М.
Ақтөбе,2008ж.
Мазмұны
Кiрiспе..............................................................................................................3
1. Құрылымдар................................................................................................5
1.1 Құрылымдар және олармен операциялар...................................10
1.2 Құрылымдар массиві.....................................................................12
2. Біріктірулер................................................................................................14
2.1 Біріктірулер және олармен операциялар.....................................18
2.2 Мәліметтер базасын біріктіру........................................................19
Қорытынды....................................................................................................21
Қолданылған әдебиеттер.............................................................................22
Қосымша........................................................................................................23
Кiрiспе.
Құрылымдық программалау. Программалаудың дәстүрлі технологиясы программалардың негізгі тұтынушылары
Программалық қамтамасыз ету дағдарысы программа жасаудың жаңа тәсіліне
Программа қанағаттандыруы тиіс негізгі талап толық сәйкестікте жұмыс
тілінің негізгі конструкциясын, программаның жазылуын зерттейміз.
1. Құрылымдар.
Массивке қарағанда құрылымдар бір типті және әр түрлі
struct [ типi ] {
1-шi элемент типi_1;
2-шi элемент типi_2;
…
n-шi элемент типi_n;
} [ тiзiмi ];
Құрылым элементтерi құрылым аумағы деп аталады және осы
struct {
char fio[30];
int date, code;
double salary;
}staff[100]. *ps;
Егер компиляторға құрылым мөлшері керек болмаса, оны қолдана
struct List;
struct Link{
List *p;
Link *prev. *succ
};
struct List { /* құрылымның анықталуы */};
Бұл құрылымдардың байланысты тізімдерін жасауға рұқсат етеді. Құрылымдарды
struct{
char fio[30];
int date, code;
double salary;
}worker = {“Страусенко”, 31, 215, 3400.55};
Құрылымдардың массивтерін инициализациялауда массивтің әрбір элементін фигуралық жақшаларға
struct complex{
float real, im;
} compl [2][3] = {
{{1, 1}, {1, 1}, {1, 1}},
{{2, 2}, {2, 2}, {2, 2}}
};
Бірдей құрылымдық типтерде иелену операциясы белгілі болса, элементтік
struct A {int a; double x;};
struct B {A a; double x;} x[2];
x[0]. a. a = 1;
x[1].x = 0.1;
Көрініп тұрғандай құрылымдардың аумағы бірдей бола алады, өйткені
struct тег {
типі1 аты1;
типі2 аты2;
типі3 аты3;
...
...
типіn атыn;
};
Осы тараудағы программалар мысалдарында мынадай құрылымдармен жұмыс жасаймыз:
struct stboat {
char szmodel [ iSTRING15 + iNULL_CHAR ];
char szserial [ iSTRING20 + iNULL_CHAR];
int iyear;
long lmotor_hours;
float fsaleprice;
};
Бұл уақытта моторлы қайықтар суреттейтін stboat атты құрылым
С++ тіліндегі құрылымдардың қосымша синтаксисі. С++ тілінде құрылым
/* С және C++тегі функцияның берілуі */
void vprint_data ( struct stboat stused_boat);
// тек C++те берілуі
void vprint_data ( stboat stused_boat);
Келесі программа осы программаның модификацияланған түрі:
/*
* structfn.c
* Бұл программа С тіліндегі құрылымның
* функцияға берілуі
*/
#include
#define iSTRING15 15
#define iSTRING20 20
#define iNULL_CHAR 1
struct stboat {
char szmodel [iSTRING15 + iNULL_CHAR];
char szserial [iSTRING20 + iNULL_CHAR];
int iyear;
long lmotor_hours;
float fsaleprice;
};
void vprint_data ( struct stboat stused_boat);
int main (void)
{
struct stboat stused_boat;
printf(“\nҚайық моделін енгізіңіз: “);
gets (stused_boat.szmodel);
printf(“\nҚайықтың тіркеу номерін енгізіңіз: “);
gets ( stused_boat.szserial);
printf(“\nҚайықтың шығарылған жылын енгізіңіз: “);
scanf(“%d”, &stused_boat.iyear);
printf(“\nҚайықтың бағасын енгізіңіз: “);
scanf(“%f”, &stused_boat.fsaleprice);
vprint_data(stused_boat);
return(0);
}
void vprint_data(struct stboat stused_boat)
{
printf(“\n\n”);
printf(“ %s %d #%s, \n”,
stused_boat.szmodel, stused_boat.iyear,
stused_boat.szserial);
printf(“ $%8.2f\n”, stused_boat.fsaleprice);
}
Құрылымдарғa қысқаша шолу. Мысалы, баскетболшы туралы хабарды сақтау
Бұған біз құрылым қолдануымыз керек. Құрылым массивке қарағанда
Әуелі құрылымды суреттейміз, мұнда, құрылымдағы мәліметтер типін
struct inflatable
{
char name[20];
float volume;
double price;
};
Мұндағы, struct cөзі құрылым кодын, inflatable осы форманың
Құрылымдардың қасиеттері:
С++ тілінде пайдаланушымен анықталатын типтер қасиеттері бойынша бір-біріне
1.1 Құрылымдар және олармен операциялар.
Программада берілген объектілер әр түрлі типті қасиеттерге ие
Struct NewType
{
type1 Name1;
type2 Name2;
…
typen NameN;
};
Құрылым синтаксисі нүктелі үтір (;) символымен аяқталады. Егер
NewType Variable;
Осылайша, NewType типті Variable құрылымдық объекті жасалады.
struct NewType
{
type1 Name1;
type2 Name2;
…
typen NameN;
} Variable;
Құрылым элементтері олар жарияланғанда инициализацияланады. Мағыналарын меншіктеу үтір
struct MyStruct
{
int iVariable;
long lValue;
char Str[10];
} mystruct = {10, 300L, “Hello”};
Құрылым элементтеріне рұқсат: құрылымдар мәліметтерін жазу немесе оқу
House.RegNum = 524;
strcpy(MyHouse.Street, “ул. Гоголя”);
strcpy(MyHouse.HouseNum, “2-a”);
House.MaxFloorNum = 7;
House.MaxFlatNum = 84;
House.Parking = true;
Құрылымдар функция аргументтері ретінде. Белгілі бір принциптар бойынша
struct ALLNUMB
{
int nVar;
long lVar;
short shVar;
unsigned int uiVar;
};
void Func (ALLNUMB);
Осы кезде құрылым параметрінің типі функцияға беріледі. Осылайша
1.2 Құрылымдар массиві.
Құрылымдық мәліметтер массивке біріккенде мәліметтер базасы шығады. Құрылымдар
HOUSE mDistr[30];
for(int i=0; i
С тілінде студенттердің аттестация қорытындысының мониторингісін құру. Құрылымдар
Көрсеткіштер массиві
С. Құрылымдар
Массив элементіне қатынас жасау тәсілі
Обьектілі - бағытталған программалау негіздері
Массив элементтерінің түрлеріне шектеулер
Екі өлшемді массивтер
Тарылған өзенінде жобаланған су қойма торабы
Құрыдымдық типтер.жиындар
Геологиялық құрылысы мен жер бедері