Documente Academic
Documente Profesional
Documente Cultură
De exemplu:
Declararea:
struct masina { struct punct {
char numar_inmatriculare[9]; int x, y;
char marca[20]; }A;
char model[20]; struct segment {
int anul_aparitiei; punct A, B;
bool combustibil_benzina; }S;
}mama, bunicu; struct dreptunghi {
masina tata, vecin; punct S, D;
};
struct patrat {
punct A;
double lungimea_laturilor;
}a[100];
Accesarea datelor
Accesarea datelor se face cu ajutorul semului“.”.
Exemplu: Să se afiseze anul apariţiei maşinii a cărei identitate este reţinută de variabila tata.
cout << tata.anul_aparitiei << ”\n”;
Moduri de inţializare
Vom lua drept exemplu stuctura punct.
punct O = {0, 0};
punct A = {y = 1, x = 6};
punct B = A;
Moduri de atribuire
Vom lua drept exemplu structura punct. Şi vom considera A, B şi O declarate anterior ca în exemplul
de mai sus.
A.x = 4;
B = A;
O = (punct) {1, 3};
Exerciţii
1. Variabila d, declarată alăturat, memorează în câmpurile a şi b lăţimea şi, respectiv, lungimea unui dreptunghi. Care dintre
următoarele instrucţiuni atribuie câmpului aria al variabilei d valoarea ariei dreptunghiului respectiv?
struct dreptunghi {
float a,b,aria;
} d;
a. d.aria==d.a*d.b; b. aria.d=a.d*b.d;
c. aria.d=d.a*d.b; d. d.aria=d.a*d.b;
2. Considerăm declararea alăturată folosită pentru a memora numele, prenumele şi cele 2 note ale unui elev.Care dintre
instrucţiunile de mai jos calculează în variabila reală m media aritmetică a notelor elevului ale cărui informaţii sunt
memorate în variabila x?
struct elev {
char nume[10], prenume[20];
float nota1,nota2;
} x;
a. m=(x.nota1+x.nota2)/2; b. m=(nota1+nota2)/2;
c. x.m=(x.nota1+x.nota2)/2; d. m=(x,nota1+x,nota2)/2;
3. Variabila x, declarată alăturat, memorează în câmpurile med1 şi med2 mediile semestriale ale unui elev. Scrieţi o
expresie a cărei valoare va fi media anuală a acestui elev.
struct elev {
int matricol;
float med1, med2;
} x;
4. Campion: dreptc
5. Campion: afise
6. Campion: patrate2
7. Se dă n şi n puncte în plan. Să se afiseze punctele ordonate crescator după x şi în caz de egalitate crescator
după y.
8. Se dă n, o mulţime de n puncte în plan şi un punct A. Căutaţi binar A în mulţimea de puncte.