Uploaded by Abubakir Abdullayev

1-mavzu Strukturalar bilan ishlash

advertisement
1-mavzu: Strukturalar bilan ishlash
1. Struktura tipidagi ma’lumotlarini kiritish va chiqarishni tashkillashtirish.
2. Axborotlarni izlash va tanlashni tashkillashtirish
Barcha elementlari bir xil tipda bo'lgan massivdan farqli, struktura turli
tipdagi elementlarni o'z ichiga oladi. C++ tilida struktura sinf turi hisoblanadi va
uning barcha xossalariga ega, lekin ko'p hollarda strukturalarni C tilda qanday
aniqlangan bo'lsa shunday foydalanish yetarli:
struct [ tip_nomi ]
{
tip_1 element_1;
tip_2 element_2;
…
tip_n
element_n;
} [ tavsiflanuvchilar_ro'yxati ]
Sintaksis
Dastur yozish jarayonida har xil ma’lumotlarni gruhlashga ehtiyoj vujudga
kelishi mumkin. Masalan, qandaydir obyektlar nomlari va obyektning joylashuv
koordinatasini saqlash zaruruiyati bo’sin. Buni massivlar yordamida
tashkillashtirish mumkin:
int x_coor[10];
int y_coor[10];
string names[10];
Bir massivning har bir elementi boshqasi bilan bog’langan, birortasini
o’zgartirilsa qolganlarini ham o’zgartirishga to’g’ri keladi. Maluym otlar ko’p
bo’lsa ularni birlashtirish dasturning murakkablashishiga olib kelishi mumkin.
Shuning uchun turli xil ma’lumotlarni birlashtirish uchun strukturalar ishlatiladi.
Strukturani e’lon qilish quydagicha:
struct Car
{
int x_coor;
int y_coor;
string name;
};
Strukturani e’lon qilib, dasturda foydalanuvchi tomonidan aniqlangan
ma’lumotlar turidan standart turlar kabi foydalanish mumkin bo’ladi, ya’ni
struktura tipidagi o’zgaruvchini e’lon qilish quydagicha:
structName variableName;
Bu yerda : structName —struktura nomi, variableName — o’zgaruvchi nomi.
x_coor, y_coor va name — bizning strukturadagi maydonlar.
Strukturani e’lon qilishda ma’lumotlarni murakkab turi hosil qilinadi,uning
yordamida
o’zida bir nechta qiymatlarni(masalan, koordinatalar va nom)
birlashtiradigan o’zgaruvchilarni yaratish mumkin bo‘ladi. Struktura ichidagi har
bir maydonga nom beriladi, chunki maydon qiymatga uning nomi bo‘yicha
murojaat qilinadi. Struktura maydoniga murojaat qilish uchun nuqta ishlatiladi:
// o’zgaruvchi e’loni
Car myCar;
// maydonlarga murojaat qilish
myCar.x_coor = 40;
myCar.y_coor = 40;
myCar.name = "Nexia";
Quyidagi misol yordamida strukturada talabalar haqidagi ma’lumotlar
(talabaning ismi, kursi, bahosi) qanday saqlash qaraladi. Bu dasturda biz talaba
nomli struktura hosil qilinadi, unda uchta element name (string), roll(integer),
mark(float) bo’ladi. Ma’lumotlarni saqlash uchun s o’zgaruvchidan foydalaniladi.
Shuningdek, strukturadan ma’lumotlarni ekranga chiqarish ham ko’rsatiladi.
#include <iostream>
using namespace std;
struct student
{
char name[15];
int roll;
float mark;
};
int main()
{
student s ;
cout << "Talaba haqidagi malumotlarni kiriting " << endl;
cout<<"Talaba ismi: ";
cin>>s.name;
cout<<"Talaba kursi: ";
cin>>s.roll;
cout<<"Talaba bahosi: ";
cin>>s.mark;
cout << "Talaba haqidagi malumotlarni chiqarish " << endl;
cout<<"Talaba ismi: "<<s.name<<endl;
cout<<"Talaba kursi: "<<s.roll<<endl;
cout<<"Talaba bahosi: "<<s.mark<<endl;
return 0;
}
Download