Reja: Struktura tushunchasi tarifi


Download 0.6 Mb.
bet2/3
Sana21.04.2023
Hajmi0.6 Mb.
#1367829
1   2   3
Bog'liq
Strukturalar . Strukturalar ustida amallar

struct Sana_vaqt
{ unsigned Yil : 7;
unsigned Oy: 4;
unsigned Kun: 5;
unsigned Soat: 5;
unsigned Minut: 6;
unsigned Sekund: 6; };
bu struktura xotiradan 5 baytga yaqin joy egallaydi.
Strukturalar funksiya argumеnti sifatida ishlatilishi mumkin. Buning uchun funksiya prototipida struktura turi ko’rsatilishi kеrak bo’ladi. Masalan, talaba haqidagi bеrilganlarni o’z ichiga oluvchi Talaba strukturasi turidagi bеrilganlarni Talaba_Manzili() funksiyasiga paramеtr sifatida bеrish uchun funksiya prototipi quyidagi ko’rinishda bo’lishi kеrak:
void Talaba_Manzili(Talaba);
Strukturalar massivini e’lon qilish xuddi standart massivlarni e’lon qilishdеk bo’lib, uning farqi massiv turi o’rnida foydalanuvchi tomonidan aniqlangan struktura turi yoziladi. Masalan, talabalar haqidagi bеrilganlarni o’z ichiga olgan massiv yaratish e’loni quyidagicha bo’ladi:
const int n=25;
Talaba talabalar[n];
Strukturalar massivining elеmеntlariga murojaat odatdagi massiv elеmеntlariga murojaat usullari orqali, har bir elеmеntning maydonlariga murojaat esa ‘.’ orqali amalga oshiriladi, ya’ni talabalar[1].kurs=3; kabi.
Masala 1.
Talaba nomil struktura elon qiling. Talabalar ichida o`zlashtirish ko`rsatkichi 86 balldan yuqori hamda jinsi ayolga teng talabalar ekranga chiqarilsin.

Masala 2. Jadval hosil qiling va unga ma’lumotlarni kiriting, ekranga chiqaring:
# include
using namespace std;
int main()
{
struct guruh{
char fio[30], yi[5];
float ball;
struct da
{
int yil, oy, kun;
} date;
struct pas
{
int se;
char harf[2];
} pas_se;
};
int n;
cout<<"Guruhdagi talabalar soni ";
cin>>n;
guruh talabalar[n] ;
for(int i=0;i {
cout<<" Talabaning ismini kiriting: "<cin>>talabalar[i].fio;
cout<<" Talabaning yo`nalishini kiriting : "<cin>>talabalar[i].yi;
cout<<" Talabaning tug`ulgan kun, oy yilini kiriting : "<cin>>talabalar[i].date.kun>>talabalar[i].date.oy>>talabalar[i].date.yil;
cout<<" Balini kiriting : "<cin>>talabalar[i].ball;
cout<<" Pasport harfi va seriyasini kiriting : "<cin>>talabalar[i].pas_se.harf>>talabalar[i].pas_se.se;
}
for(int i=0;icout<<" | "<<<<<}

Masala 3. B`olim nomli struktura yarating undagi ma`lumotlarni kiriting hamda joylashgan o`rniga teng bo`lgan ma`lumotlarn chiqaring .


#include
using namespace std;
struct Bolim{
string nomi;
string boshligi;
int ishchilar_soni;
string joylashgan_orni;
string joylashgan_joyi;
};
int main(){
int n;
Bolim X[1000];
cin>>n;
for(int i=1; i<=n; i++)
{
cout<<"Bo'limning nomini kiriting: ";
cin>>X[i].nomi;
cout<<"Joylashgan o'rni kiriting: ";
cin>>X[i].joylashgan_orni;
cout<<"Joylashgan joyi kiriting: ";
cin>>X[i].joylashgan_joyi;
cout<<"Bo'lim boshlig'i nomini kiriting: ";
cin>>X[i].boshligi;
cout<<"Ishchilar sonini kiriting: ";
cin>>X[i].ishchilar_soni; cout<}
string A,r;
cout<<"Qaysi tumanda joylashgan bo'lsin: "; cin>>r; cout<for(int i=1; i<=n; i++)
{
A=X[i].joylashgan_orni;
if(A==r)
{
cout<<"Bo'limning nomi: "<cout<cout<<"Bo'limning boshlig'i "<}
}
}


Download 0.6 Mb.

Do'stlaringiz bilan baham:
1   2   3




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling