Sunteți pe pagina 1din 2

Numele si prenumele__________________________________________

Nr.
Test cls a XI-a C INREGISTRARI 2022
Nu sunt admise ștersături, modificări sau orice însemnări care pot produce confuzie in apreciere, existența unor astfel de
situații determină anularea răspunsului respectiv,chiar daca este marcat si răspunsul corect.
SUBIECTUL I (2p)- Incercuiti raspunsul corect
(0,5p) 1. Variabila x este declarată mai jos. Indicați secvența care, în urma executării, memorează în variabila x ziua,
luna și anul corespunzătoare unei date calendaristice citite de la tastatură.
struct data { int zi, luna, an; }x;
a. cin>>x.zi>>x.luna>>x.an; b. cin>>zi.x>>luna.x>>an.x;
c. cout<<x.zi<<x.luna<<x.an; d. cout<<zi.x<<luna.x<<an.x;
e. cin>>data.zi.x>>data.luna.x>>data.an.x; f. cin>>data.zi>>data.luna>>data.an;

(0,5p) 2.Ştiind că fiecare dintre variabilele var1, var2 memorează numele şi nota a doi elevi în forma dată de declararea
alăturată, indicaţi care dintre următoarele expresii atribuie variabilei reale m media aritmetică a notelor celor doi elevi.
struct elev
{ char nume[30];
float nota;
}var1,var2;
a. m=(var1.nota+var2.nota)/2; b. m=var1.nota+var2.nota/2;
c. m=(var1+var2).nota/2; d. m=nota(var1+var2)/2;

(0,5p) 3. Considerând declarările alăturate, care dintre următoarele 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 e.toate variantele sunt gresite f. c.centru,y

(0,5p)4. In declararea alăturată, câmpurile x si y ale structurii reprezintă coordonatele reale ale centrului unui cerc si r
lungimea razei cercului. Expresia C/C++ care are valoarea 1 dacă si numai dacă cercul are centrul în cadranul III.
struct punct
{ float x,y;};
struct cerc
{ punct A;
float r;
} C;
a)C.A.x<0 && C.a.y>0 b) C.A.x<0 && C.a.y<0 c) C.A.x>0 && C.A.y>0 d) C.A.x<0 || C.A.y>0
e) A.C.x<0 && A.C.y<0 f) A.C.x>0 && A.C.y<0 g)toate variantele sunt gresite

SUBIECTUL II (7p)-Precizati in zona libera rezolvarea corecta a itemului:


1. Variabila z, declarată alăturat, memorează partea reală şi partea imaginară a unui număr
complex.
struct complex { float re; float im; }z; int modul;
Scrieti o expresie C++ care atribuie variabilei modul o valoare egală cu pătratul modulului numarului
complex z definit anterior.

R___________________________________
2. Fiecare dintre variabilele A și B, declarate mai jos, memorează coordonatele pozitive (x abscisa,
iar y ordonata) ale câte unui punct în sistemul de coordonate xOy, extremități ale unui segment.
struct punct
{ int x,y;
} A,B;
Scrieți o secvență de instrucțiuni C++ în urma executării căreia să se afișeze pe ecran mesajul DA
dacă cel puțin una dintre extremitățile segmentului precizat este în originea sistemului de coordonate
xOy sau mesajul NU în caz contrar.
R.
3. Variabila t, declarată alăturat, memorează în câmpurile a, b şi c lungimile laturilor unui triunghi.
Scrieti o instrucţiune C++ care atribuie câmpului p al variabilei t valoarea perimetrului triunghiului
respectiv.
struct triunghi { float a,b,c,p; }t; R…………………………….

4. Se consideră declarările de mai jos, în care variabila ev memorează date despre un anumit elev.
Scrieţi instrucţiunea C/C++ prin care se iniţializează anul naşterii acestui elev cu valoarea 2010.
struct data
{ int zi; int luna; int an; };
struct elev
{ char nume[30];
struct data data_nasterii;
float media; }ev;
R………………………………….
5. Variabila m memorează simultan datele fiecăreia dintre cele 300 mașini înscrise în catalogul de
vânzări 2022: numărul de km și prețul (numere naturale de maxim 6 cifre) respectiv consumul la 100
km (exprimat printr-un număr real). Scrieți definiția unei structuri cu eticheta vauto, care să permită
memorarea datelor referitoare la o mașină și declarați variabila m astfel încât să fie corecte aceste
accesări: m[10].km, m[10].pret, m[10].consum
R.

6. Cum se poate afisa prima literă a numelui unei persoane ale cărei date de identificare sunt
memorate în variabila p, declarată alăturat?
struct persoana{
char nume[20],prenume[20];
int varsta;} p;
R……………………………….
7. Despre un site web se memorează codul site-ului, numărul de accesări ale acestuia și numărul de
aprecieri pe care le-a primit. Pentru aceste informații un elev a declarat variabila s astfel:
struct site { char cod[25]; int nrAccesari,nrAprecieri; } s;
Scrieți o secvență de instrucțiuni C++ în urma executării căreia să se afișeze mesajul Peste 50%!,
dacă dublul numărului de aprecieri depășește numărul celor care au accesat site-ul, mesajul
Jumatate! dacă dublul numărului de aprecieri este egal cu numărul celor care au accesat site-ul sau
mesajul Sub 50%! altfel.
R………….

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