Sunteți pe pagina 1din 4

1.

Structura de date COLET permite reinerea a dou numere reale, reprezentnd valoarea exprimat n euro a unui colet potal, respectiv greutatea exprimat n kilograme, i un ir de caractere reprezentnd numele oraului expeditorului, format din cel mult 30 de caractere. Scriei n limbajul C/C++ declararea structurii COLET i o secven de instruciuni care permite citirea valorilor componentelor variabilei x de tipul COLET. Denumii sugestiv componentele structurii. 2. Scriei o expresie logic C/C++ care s codifice condiia ca variabila v din declaraiile alturate s reprezinte segmentul nul (segmentul care are originea identic cu extremitatea). struct punct {float x; float y;}; struct segment { struct punct origine; struct punct extremitate;} v; 3. Se consider o stiv iniial vid n care se introduc, n aceast ordine, numerele
1,2,3,4,5, apoi se fac dou extrageri, se introduc, n aceast ordine, numerele 6,7 i 8 i apoi se mai fac 4 extrageri. Ce numr se va afla n vrful stivei dup finalizarea acestor operaii?

4. struct nod {int info; unsigned urm;} nod lista[100]; unsigned p,q,r,k; O list simplu nlnuit conine n ordine urmtoarele noduri: 123089? Ce se va afia n urma execuiei urmtoarei secvene de program? for(p=prim,k=1;k<6;k++) {p=lista[p].urm; cout<<lista[p].info;} b)Dac p este primul nod al listei i q al doilea nod, prin ce instruciune se leag nodul p de nodul urmator al lui q?

1. Se consider declarrile alturate. Care este tipul expresiei de mai jos? x.x.y struct A struct B struct C { int x; { float x; {struct A x; char y; long y; struct By;}x, y; }; }; . a. long b. int c. char d. float 2. Fiecare dintre variabilele declarate alturat memoreaz numele i nota cte unui elev.
Scriei secvena de instruciuni prin care se citesc de la tastatur numele i nota pentru fiecare dintre variabilele e1 i e2 i apoi se afieaz numele elevului cu nota cea mai mare. Dac cele dou note sunt egale, se va afia numele elevului reprezentat n variabila e1. struct elev{ char nume[20]; float nota; }; elev e1,e2;

3. Se consider o stiv S1, iniial vid, n care s-au introdus, n aceast ordine, valorile 10,
12, 3 i o alt stiv, S2, iniial vid, n care au fost introduse, n aceast ordine, valorile 6, 5, 4. Care va fi elementul din vrful stivei S1 dup urmtoarele operaii: se extrag toate elementele din stiva S2 i se adaug, n ordinea extragerii, n stiva S1?

4. struct nod {int info; unsigned urm;} nod lista[100]; unsigned p,q,r,k; O list simplu nlnuit conine n ordine urmtoarele noduri: 123089? a)Ce se va afia n urma execuiei urmtoarei secvene de program? for(p=prim,k=0; lista[p].urm !=NULL; p=lista[p].urm) if (lista[p].info%2) {k*= lista[p].info; cout<<lista[p].info;} b) Dac p este primul nod al listei, cum facem referire la al doilea nod din list?

1. Considernd declarrile alturate, care dintre urmtoarele referiri este corect din punct de vedere sintactic ? struct punct{float x,y;}; struct cerc {float raza; punct centru;} c; a. c.punct.y b. c.raza.punct c. c.centru.x d. c.y.centru 2. n declararea alturat, cmpurile a i b ale nregistrrii reprezint numrtorul, respectiv numitorul unei fracii. Care este expresia cu care se pot nlocui punctele de suspensie n secvena de mai jos astfel nct dac fracia memorat n variabila f se simplific prin numrul natural nenul k se afieaz mesajul DA? if ( ) cout<< DA; | printf(DA); struct rap { int a, b; } f; int k; 3. Se consider o stiv, iniial vid, n care s-au introdus n ordine valorile 1, 2, 3 i o coad, iniial vid, n care au fost introduse, n ordine, valorile 6, 5, 4. Care va fi elementul din vrful stivei dac se extrag toate elementele din coad i se adaug, n ordinea extragerii, n stiva dat?

4. struct nod {int info; unsigned urm;} nod lista[100]; unsigned p,q,r,k; O list simplu nlnuit conine n ordine urmtoarele noduri: 123089? Ce se va afia n urma execuiei urmtoarei secvene de program? for(p=prim; lista[p].info !=0; p=lista[p].urm) cout<<lista[p].info; b) Dac p este primul nod al listei i q al doilea nod, prin ce instruciune se leag nodul p de nodul q?

1. Considernd declarrile alturate, care dintre urmtoarele referiri este corect din punct de vedere sintactic ? struct datan{int zi,ln,an;}; struct elev {char nume[30]; datan dn,da;} e; a. e.datan.ln b. nume.e c. e.dn.an[2] d. e.dn.zi 2. Scriei definiia corect a unui tip de date necesar pentru a memora simultan ntr-o singur variabil de acest tip, urmtoarele caracteristici ale unui cerc: abscisa i ordonata centrului cercului (numere ntregi) i raza acestuia (numr real), astfel nct expresia de mai jos s calculeze diametrul cercului ale crui caracteristici sunt memorate n variabila x. 2*x.raza 3. Se consider o coad, n care au fost introduse iniial, n aceast ordine, primele trei numere

impare 1, 3 i 5. Coninutul cozii este reprezentat n figura alturat. Notm cu AD X operaia prin care se adaug informaia X n coad i cu EL operaia prin care se elimin un element din coad. Asupra cozii se efectueaz, exact n aceast ordine, operaiile EL; AD 4; AD 6. Reprezentai, dup modelul din figura alturat, coninutul cozii dup fiecare operaie.

4. struct nod {int info; unsigned urm;} nod lista[100]; unsigned p,q,r,k; O list simplu nlnuit conine n ordine urmtoarele noduri: 123089? a)Ce se va afia n urma execuiei urmtoarei secvene de program? for(p=prim,k=0; lista[p].info !=0; p=lista[p].urm) if (lista[lista[p].urm].info>1) k++; cout<<k; b) Dac p este primul nod al listei, cum facem referire la al treilea nod al liste?

S-ar putea să vă placă și