Test __ cls a XI-a C
Nume si prenume_________________________
1) Ştiind că fiecare dintre variabilele e1, e2 conţine numele şi media unui elev în forma dată
de declararea alăturată, scrieti o expresie care atribuie variabilei reale m media aritmetică a
mediilor celor doi elevi:
struct elev R:_______________________________________
{ char nume[30];
float media;
} e1,e2;
float m;
2)Se considera declararea :
struct material
{ char denumire[10];
int pret; };
material x;
Scrieti o secventa C++ care sa afiseze pe ecran ultima litera a denumirii unui material ale carui caracteristici
sunt memorate in variabila x?
R_______________________________________
3) Se consideră declararea alăturată. Scrieţi o secvenţă de instrucţiuni în urma executării căreia câmpul
paritate al variabilei x să memoreze litera q, dacă numărul memorat în câmpul v al acesteia este impar, sau
litera y dacă numărul memorat în câmpul v al acesteia este par.
struct numar
{ int v;
char paritate;
}x
R
4) Variabila d, declarată alăturat, memorează în câmpurile x şi y lăţimea şi, respectiv, lungimea unui
dreptunghi. Scrieti o instrucţiuni care atribuie câmpului p al variabilei d valoarea perimetrului dreptunghiului.
struct dreptunghi
{float x,y,p;
}d;
R…………………..
5) În declararea alăturată, variabilele f si fd memorează în câmpurile a si b numărătorul, respectiv numitorul
câte unei fractii. Scrieti o secventă de instructiuni C/C++ care să memoreze în variabila fd fractia obtinută prin
scaderea fractiei memorate în variabila f si a fractiei
struct fractie { R. ………………………………………………….
int a,b;
} f,fd; ……………………………………………………….
6) O variabilă p este folosită pentru a memora simultan denumirea unui produs, preţul unitar şi cantitatea existentă în
depozit din acest produs. Scrieţi declararea variabilei p, ştiind că valoarea produsului aflat în depozit se calculează
folosind atribuirea:
valoare = [Link] * [Link];
şi se afişează folosind instrucţiunea:
cout<<[Link]<<” ”<<valoare ; |printf(“%s%d”,[Link],” ”,valoare);
R
7) Se consideră declararea alăturată, în care variabilele t1 şi t2 memorează lungimile laturilor a două
triunghiuri. Scrieţi o expresie C/C++ logica care are valoarea 1 dacă şi numai dacă triunghiul corespunzător
variabilei t1 are perimetrul egal cu perimetrul triunghiului corespunzător variabilei t2.
struct triunghi {
int a,b,c;
} t1, t2;
R.
8) Considerând declararea alăturată, care dintre următoarele secvenţe de instrucţiuni afişează valorile
memorate în cele două câmpuri ale variabilei x, separate printr-un spaţiu?
struct {
int a, b;
} x;
a. cout <<x.a<<” ”<<b.x;
b. cout<<x.a<<” ”<<x.b;
c. cout<<x; | printf(”%d”, x);
d. cout<<a->x<<” ”<<b->x;
9) Care dintre următoarele variante reprezintă o declarare corectă pentru o variabilă x care memorează simultan
coordonatele reale(abscisa şi ordonata) ale unui punct în planulxOy?
[Link] c {float ox,oy;} x; b. char x[2]; [Link] x {float ox,oy;}; d. float x;
10) In declararea alăturată, câmpurile x si y ale structurii reprezintă coordonatele reale ale centrului unui cerc si
r lungimea razei cercului. Indicati 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.r > 0 b). C.A.x < 0 && C.A.y < 0 c). x.A.C > 0 && y.A.C > 0 d). A.x > 0 && A.y > 0
11) Ştiind că s-au făcut declarările alăturate, stabiliţi care dintre următoarele expresii
este corectă din punct de vedere sintactic?
struct elev {
char nume[30];
float nota;} a[100];
a. elev[1].nota b. a[1].nota[1]
c. [Link][1] d. a[1].nota
OBS. Item 1-7 (1p) ; 8-11 (0,5p).Oficiu 1p
Se consideră declararea alăturată. Scrie_i o secven_ă de
instruc_iuni în urma executării căreia câmpul mii al variabilei x
să memoreze litera M, dacă numărul memorat în câmpul v al
acesteia este strict mai mare decât 999, sau litera A altfel.(6p.)
struct numar
{ int v;
char mii;
} x;
Test 2 cls a XI-a [Link]
1)Se considera declararea :
struct material
{ char denumire[10];
int pret; } x;
Cum se poate accesa prima litera a denumirii materialului „piele” ale carui caracteristici sunt memorate in
variabila x?
a) [Link][1] ;b)[Link][1]; c) [Link][4] ;d)[Link][0];
2)Variabilele e1,e2 declarate alăturat memorează în câmpurile med şi matricol media si numarul matricol
ale unor elevi. Scrieţi o expresie C++ prin care se va afisa pe ecran numarul matricol al elevului cu cea mai
mare medie.
struct elev
{ float med;
Int matricol;
} e1.e2;
3) Variabila d, declarată alăturat, memorează în câmpurile a şi b lăţimea şi, respectiv, lungimea unui
dreptunghi. Scrieti o instrucţiuni care atribuie câmpului p al variabilei d valoarea ariei dreptunghiului.
struct dreptunghi
{float a,b,p;
}d;
4) Care dintre următoarele variante reprezintă o declarare corectă pentru o variabilă x care
memorează simultan coordonatele reale(abscisa şi ordonata) ale unui punct în planulxOy?
[Link] punct {float ox,oy;} y; b. char x[2];
[Link] xy {float ox,oy;}x; d. float x;
6) Structura cu numele carte permite memorarea unui număr real, reprezentând valoarea
exprimată în euro a unei cărti, a unui număr întreg, reprezentând numărul de pagini ale
cărtii, si a unui sir de caractere reprezentând titlul cărtii, format din cel mult 50 de
caractere. Scrieti în limbajul C/C++ o definitie a structurii mentionate si declarati o variabilă z de acest tip.
Denumiti sugestiv câmpurile acestei structuri.
7) Dintr-un fisier text “[Link]” se citeste de pe prima linie a fisierului numarul elevilor dintr-o scoala
apoi incepand cu a doua linie a fisierului urmatoarele date despre elevi ( nume, clasa, media).Fiecare rand contine
date despre un elev. Scrieti un program C++ care sa afiseze pe ecran o lista a elevilor nepromovati(media<5)
5) În declararea alăturată, câmpurile x şi y ale înregistrării reprezintă numărătorul, respectiv numitorul unei
fracţii de forma de mai jos . Scrieţi instrucţiunile prin executarea cărora se memorează în variabila
H fracţia obţinută prin scaderea fracţiilor reţinute în F şi G.
struct fractie
{
int x,y;
} F,G,H;
6) Structura cu numele culegere permite memorarea unui număr real, reprezentând valoarea
exprimată în euro a unei cărti, a unui număr întreg, reprezentând numărul de pagini ale
cărtii, si a unui sir de caractere reprezentând titlul cărtii, format din cel mult 50 de
caractere. Scrieti în limbajul C/C++ o definitie a structurii mentionate si declarati o variabilă z de acest tip.
Denumiti sugestiv câmpurile acestei structuri.
7) Dintr-un fisier text “[Link]” se citeste de pe prima linie a fisierului numarul elevilor dintr-o scoala
apoi incepand cu a doua linie a fisierului urmatoarele date despre elevi ( nume, clasa, media).Fiecare rand contine
date despre un elev. Scrieti un program C++ care sa afiseze pe ecran care este media unui elev si in ce clasa
invata daca de la tastatura se va introduce numele acestuia
Ex. numele elevului=Popescu
Elevul are media …. si invata in clasa ….