47970918 c Test Grila Solved
-
Upload
ana-maria-covaci -
Category
Documents
-
view
389 -
download
10
Transcript of 47970918 c Test Grila Solved
-
8/3/2019 47970918 c Test Grila Solved
1/43
Grile laborator programare I (Cucu)
1. Care din urmatoarele actiuni au loc la compilare?
a) analiza lexicala
b)includerea fisierelor header
c) definirea constantelor simbolice
d)analiza sintactica
e) generarea codului obiect
f)editarea de legaturi
2. Fisierele header, furnizate alaturi de biblioteci de module cod obiect, impreuna cu uncompilator, contin:
a) definitiile functiilor de biblioteca
b) macro-definitii
c) prototipurile functiilor de biblioteca
3. La preprocesarea unui fisier sursa C
a) se includ functiile de biblioteca
b) se obtine o noua versiune a textului sursa
c) se obtine codul obiect
4. In conditiile de mai jos
#define PI 3.14
int r;
valoarea expresiei 2 * PI * r este de tip
-
8/3/2019 47970918 c Test Grila Solved
2/43
a) int
b) float
c) double
d) long
5. Daca variabila r este declarata de tipul float, in conditiile definitiilor
#define PI 3.14
#define perimetru(raza) 2*PI*raza
valoarea expresiei perimetru(r) este de tip
a) int
b) float
c) double
d) long
6. Urmatoarea macrodefinitie
#define swap(a,b) {a=a^b; b=a^b; a=a^b;}
poate fi apelata ca swap(x, y);
a) numai daca x si y sunt variabile de tip real
b) numai daca x si y sunt variabile de tip intreg
c) daca x si y sunt constante intregi
d) indiferent de ce tip numeric sunt variabilele x si y
7. Urmatoarea macrodefinitie
-
8/3/2019 47970918 c Test Grila Solved
3/43
#define swap(a,b) {a=a+b; b=a-b; a=a-b;}
poate fi apelata ca swap(x, y);
a) numai daca x si y sunt variabile de tip real
b) numai daca x si y sunt variabile de tip intreg
c) daca x si y sunt constante intregi
d) indiferent de ce tip numeric sunt variabilele x si y
8. In conditiile
#define swap(a,b) {int aux; aux=a; a=b; b=aux;}
float x=10.5, y=3.75;
in urma apelului swap(x, y); valorile lui x, respectiv y vor fi
a) x=3.75 si y=10.5
b) x=3.0 si y=10.5
c) x=3.75 si y=10.0
d) x=3.0 si y=10.0
9. In conditiile
#define swap(a,b) {int aux; aux=a; a=b; b=aux;}
float x,y;
in urma apelului swap(x, y); rezultatul (interschimbarea valorilor lui x si y!)
a) este corect
b) nu este corect
-
8/3/2019 47970918 c Test Grila Solved
4/43
c) depinde de valorile lui x si y
d) depinde doar de valoarea lui x
10. Ce este gresit in
#define cub(x) x*x*x
a) cu o directiva define nu se pot defini decat constante simbolice
b) parametrului x nu i s-a declarat tipul
c) la apeluri de genul cub(a+b) rezultatul nu reprezinta, in general, cubul sumei (a+b)
11. Care din variante defineste corect si complet ce anume se specifica prin tipul uneidate?
a) Numarul de octeti ocupati
b) Spatiul necesar reprezentarii si modul de reprezentare.
c) Operatiile permise
12. Care din urmatoarele cuvinte rezervate denumesc tipuri de date intregi predefinite in
C?
a) char
b) float
c) short
d) int
e) long
f) long double
-
8/3/2019 47970918 c Test Grila Solved
5/43
13. Cum se numeste modul de reprezentare al datelor reale?
a) virgula mobila
b)complement fata de doi
c) virgula fixa
14. Ce este o variabila?
a) litera care tine locul unor valori (de ex. a, b, c sau x, y, z)
b) o valoare care se schimba
c) o zona de memorie identificabila in care se pot pastra valori
15. Ce caracteristica a unei variabile este precizata de clasa sa de memorare?
a) locul unde poate fi folosita
b) locul unde se creaza
c) locul unde se vede
16. Care din urmatoarele clase de memorare se specifica implicit?
a) static
b) auto
c) register
d) extern
17. Ce reprezinta domeniul unei variabile:
a) plaja de valori pe care le poate lua
-
8/3/2019 47970918 c Test Grila Solved
6/43
b) locul unde se creaza
c) locul din textul sursa unde poate fi folosita
d) daca are semn sau nu
18. Care este atributul care precizeaza unde (intr-un text sursa C) poate fi utilizat legalidentificatorul unei variabile?
a) domeniul
b) durata de viata
c) vizibilitatea
d) clasa de memorare
19. Care din urmatoarele cuvinte rezervate denumesc tipuri de date reale predefinite in C?
a) char
b) float
c) short
d) double
e) long
f) long double
20. Cum se numeste modul de reprezentare al datelor intregi?
a) virgula mobila
b) complement fata de doi
c) virgula fixa
-
8/3/2019 47970918 c Test Grila Solved
7/43
21. Care atribut al unei variabile indica locul in care este creata varibila?
a) domeniul
b) durata
c) clasa de memorare
d) vizibilitatea
22. Stiind ca valorile datelor de tip intreg sunt cu semn, care va fi valoarea variabilei c
dupa secventa:
char c=130;
a) 130
b) -126
c) \0
d) c
23. Declaratia register int i; determina crearea variabilei i:
a) intr-un registru
b) pe stiva
c) depinde de context
d) declaratia are ca efect inregistrarea variabilei!
24. Declaratia extern int val;
a) este o declaratie de referire
b) determina crearea variabilei
-
8/3/2019 47970918 c Test Grila Solved
8/43
c) ?anunta? tipul variabilei val, declarata altundeva
25. O declaratie de referire
a) creaza o variabila
b) se face cu cuvantul rezervat extern
c) anunta tipul unei variabile nedeclarate inca in respectivul fisier sursa
d) precizeaza o referinta (adresa)
26. Domeniul identificatorilor de variabile globale tine din locul declaratiei pana la:
a) sfarsitul blocului
b) sfarsitul programului
c) sfarsitul textului sursa
d) sfarsitul functiei
27. Domeniul identificatorilor de variabile locale tine din locul declaratiei
a) sfarsitul programului
b) sfarsitul textului sursa
c) sfarsitul functiei
d) sfarsitul blocului
-
8/3/2019 47970918 c Test Grila Solved
9/43
32. Care este ordinea de evaluare a expresiilor compuse, daca nu se folosesc paranteze?
a) intotdeauna de la stanga spre dreapta
b) intotdeauna de la dreapta spre stanga
c) aleatoare
d) in functie de precedenta operatorilor
33. Cand au loc conversii implicite de tip?
a) la citrea datelor de intrare si la afisarea rezultatelor
b) cand operanzii unei expresii au tipuri diferite
c) cand argumentul actual cu care se apeleaza o functie are alt tip decat argumentulformal corespunzator
34. Care din urmatorii operatori NU admit operanzi reali?
a) operatorii de incrementare/decrementare ?
b) operatorii logici
c) operatorii logici pe biti
d) operatorii de deplasare
35. Care din urmatorii operatori admit operanzi reali?
a) operatorii logici pe biti
b) operatorii de deplasare
c) operatorii de incrementare/decrementare
d) operatorii logici
-
8/3/2019 47970918 c Test Grila Solved
10/43
36. Care este rezultatul numeric al evaluarii unei expresii relationale sau logice?
a) FALSE sau TRUE
b) 0 sau 1
c) 0 sau diferit de 0
37. Care din urmatoarele valori sunt adevarate din punct de vedere logic?
a) \0
b) 0x80
c) 0
d) 280
e) 0.0
f) 3.14F
38. Care din urmatoarele valori sunt false din punct de vedere logic?
a) \0
b) 0x1F
c) 0
d) NULL
e) 0.0
f) 1F
_
39. Date declaratiile
int n=10, m=4;
-
8/3/2019 47970918 c Test Grila Solved
11/43
float x;
valoarea expresiei x = 1.5 + n/m este
a) 4.0
b) 3.5
c) de tip double
d) de tip float
40. Date declaratiile
int n=10, m=4;
valoarea expresiei 1.5 + n/m este
a) 4
b) 3.5
c) de tip double
d) de tip float
_
41. Data declaratia
float x=2.5;
valoarea expresiei x=3.0*x + 10/4 este
a) 10.0
b) 9.5
c) de tip double
d) de tip float
-
8/3/2019 47970918 c Test Grila Solved
12/43
42. Date declaratiile
float x=2.5;
valoarea expresiei 3.0*x + 10/4.0 este
a) 10.0
b) 9.5
c) de tip double
d) de tip float
_
43. Date declaratiile
int n=200, m=200;
long r;
si presupunand ca sizeof(int) este 2 iar valorile tipurile intregi sunt implicit cu semn,valoarea expresiei r=n*m este:
a) 40000
b) -25536
c) de tip long
d) de tip int
44. Daca a este o variabila intreaga, care este valoarea expresiei
(a < 'a') && (a > 'z')
a) 1
b) 0
-
8/3/2019 47970918 c Test Grila Solved
13/43
c) depinde de valoarea lui a ?
45. Daca a este o variabila intreaga, care este valoarea expresiei
(a < 'a') || (a > 'z')
a) 1
b) 0
c) depinde de valoarea lui a
46. Date declaratiile:
int i, t[10];
valoarea expresiei
( i=0 ) && ( t[i]
-
8/3/2019 47970918 c Test Grila Solved
14/43
48. Date declaratiile variabilelor locale:
int i, t[10];
si presupunand ca atat i, cat si t nu sunt initializati explicit, valoarea expresiei
( i==0 ) || ( t[i]
-
8/3/2019 47970918 c Test Grila Solved
15/43
c) este 1
d) este 0 sau 1
51. Presupunand ca adresele se reprezinta pe 4 octeti, cat spatiu de memorie se rezerva
prin urmatoarele declaratii:
extern long count;
struct node { long key;
struct node *next;
};
a) 12 octeti
b) 8 octeti
c) 4 octeti
d) nici un octet
52. Care este rezultatul evaluarii expresiei
"0123456789"[i]
daca i=9?
a) expresia este gresita sintactic
b) 9
c) 9
d) 8
53. Care este rezultatul evaluarii expresiei
"0123456789"[i]
-
8/3/2019 47970918 c Test Grila Solved
16/43
daca i=0?
a) expresia este gresita sintactic
b) 0
c) ?0?
d) ?\0?
54. Care este rezultatul evaluarii expresiei
"0123456789"[i]
daca i=10?
a) expresia este gresita sintactic
b) nedefinit
c) ?\0?
d) ?9?
55. Care este rezultatul evaluarii expresiei
"0123456789"[10]
a) expresia este gresita sintactic
b) expresia nu are sens
c) ?9?
d) 0
56. Care este rezultatul numeric al evaluarii exprresiei
a < b < c
-
8/3/2019 47970918 c Test Grila Solved
17/43
daca a=-2, b=-1 si c=0?
a) 1
b) TRUE
c) 0
d) FALSE
57. Care este rezultatul numeric al evaluarii exprresiei
a < b < c
daca a=0, b=1, c=2?
a) 1
b) TRUE
c) 0
d) FALSE
58. Daca t este un tablou, ce reprezinta valoarea expresiei
sizeof t /sizeof t[0]
a) expresia este gresita sintactic
b) expresia nu are sens
c) numarul de elemente ale tabloului t
d) numarul de octeti ocupati de t respectiv t[0]
59. Presupunanad ca sizeof(int) este 2, valoarea lui c, in urma executiei secventei
urmatoare
-
8/3/2019 47970918 c Test Grila Solved
18/43
int a=100, b=400;
long int c;
c=a*b;
a) este corecta
b) este eronata
c) este 40000
d) este -25536
60. Discutati (in functie de valorile lui a si b) rezultatul lui c dupa:
int a, c;
long b;
c=a*b;
a) rezultatul este intotdeauna corect
b) rezultatul este intotdeauna eronat
c) rezultatul este corect daca a*b se incadreaza in plaja de valori a tipului int
61. Care este valoarea expresiei ~0?
a) 1
b) -1
c) 0xF
62. Care este valoarea expresiei ~1?
a) 0
-
8/3/2019 47970918 c Test Grila Solved
19/43
b) 0xE
c) -2
63. Ce se va afisa n urma executiei secventei urmatoare:
#include
void main() {
unsigned char x=10;
x=~x;
printf(%d,(int)x); }
a) 245
b) 0
c) 255
85. Care din urmatoarele variante reprezinta modalitati de comunicare intre functii?
a) apel
b) prin variabile locale
c) prin argumentele actuale
d) prin valoarea returnata
e) prin variabile globale
f) prin includere
86. Ce este contextul de apel al unei functii?
-
8/3/2019 47970918 c Test Grila Solved
20/43
a) lista argumentelor formale
b) o zona de memorie (de pe stiva)
c) locul din textul sursa in care se apeleaza
d) instructiunile (definitia functiei)
87. Ce se regaseste in contextul de apel al unei functii?
a) definitii de constante simbolice
b) valoarea returnata
c) adresa de revenire
d) valoarea argumentelor actuale
e) variabilele locale
f) variabilele globale
88. Transmiterea argumentelor catre functia apelata (conventia de apel C) se face:
a) prin variabile globale
b) prin valoare
c) in ordine inversa celei din lista de argumente
d) prin referinta
89. Ce este o functie recursiva?
a) o functie nu poate fi recursiva
b) o functie care recurge la context
c) o functie cu lista variabila de argumente
-
8/3/2019 47970918 c Test Grila Solved
21/43
d) o functie care se autoapeleaza
90. Comparata cu varianta sa iterativa, din punct de vedere al spatiului de memorie
necesar apelului, o functie recursiva este, in principiu:
a) la fel de eficienta
b) mai putin eficienta
c) mai eficienta
91. Comparata cu varianta sa iterativa, din punct de vedere al timpului de executie, o
functie recursiva este, in principiu:
a) la fel de eficienta
b) mai eficienta
c) mai putin eficienta
92. Efectul executiei urmatoarelor secvente:
for(exp_1; exp_2 ; exp_3) exp_1;
instructiune; while( exp_2)
{instructiune;
exp_3;}
este
a) identic
b) diferit
c) dependent de context
-
8/3/2019 47970918 c Test Grila Solved
22/43
93. In absenta prototipului functiei, contextul urmatorului apel
f('2', -1.5F, 2L);
va contine argumente de tip:
a) char, float, long
b) int, double, long
c) char, double, long
d) int, float, long
94. Doua functii pot comunica in conditiile in care nici una nu o apeleaza pe cealalta?
a) nu
b) da, prin mesaje
c) eventual, prin variabile globale
95. O functie cu lista de argumente de lungime variabila
a) poate fi apelata fara nici un argument
b) poate avea, la apeluri diferite, un numar diferit de argumente
c) nu poate fi definita intr-un program C
d) trebuie sa aiba cel putin un argument cu nume
96. Rezultatul apelului f(2, 1.5, 0.25) al unei functiei declarate ca
void f(int , ...);
si care asteapta argumente de tip float in lista variabila
a) este corect
b) nu este corect
-
8/3/2019 47970918 c Test Grila Solved
23/43
c) depinde de implementarea limbajului
97. Rezultatul apelului f(2, 1, 25) al unei functiei declarate ca
void f(int , ...);
si care asteapta argumente de tip long in lista variabila
a) este corect
b) nu este corect
c) depinde de implementarea limbajului
98. Efectul executiei urmatoarelor secvente:
for(exp_1; exp_2 ; exp_3) | exp_1;
instructiune; | while( exp_2)
| instructiune;
| exp_3;
este
a) identic
b) diferit
c) dependent de context
99. Care este efectul secventei:
for(i=0; i
-
8/3/2019 47970918 c Test Grila Solved
24/43
a) se afiseaza, pe linii separate, valorile de la 1 la N
b) se afiseaza pe linie noua valoarea N-1
c) se afiseaza, pe linii separate, valorile de la 0 la N-1
d) se afiseaza pe linie noua valoarea N
100. Definitia:
void init(int tablou[ ])
{
int n, i;
n=sizeof tablou / sizeof(tablou[0];
for(i=0; i
-
8/3/2019 47970918 c Test Grila Solved
25/43
b) adresa de revenire, (float)10, (float)3.14
c) adresa de revenire, (int)10, (double)3.14
d) (int)10, (double)3.14, adresa de revenire
102. Secventa urmatoare
void f(int n)
{ int t[n], i;
for(i=0; i
-
8/3/2019 47970918 c Test Grila Solved
26/43
c) depinde de valoarea initiala a lui n
104. Ce este gresit in urmatoarea definitie a functiei itoa:
char *itoa(int n) /*converteste intregul n in sir de caractere */
{ char buf[11];
sprintf(buf, "%d", n);
return buf;
}
a) dimensiunea tabloului buf este prea mica
b) nu e nimic gresit!
c) integritatea rezultatului din buf nu este garantata in functia apelanta
119. Ce este un pointer?
a) un indicator;
b) o adresa de memorie
c) o variabila a carei valoare se interpreteaza ca adresa
120. Care dintre urmatoarele operatii sunt ilegale:
a) inmultirea unui pointer cu un intreg
b) impartirea a doi pointeri
c) compararea a doi pointeri
-
8/3/2019 47970918 c Test Grila Solved
27/43
d) scaderea unui pointer din alt pointer
e) adunarea unui intreg la un pointer
f) dereferentierea unui pointer
121. Ce operator se utilizeaza pentru dereferentierea unui pointer (adica pt.accesul la
valoarea stocata la adresa care este pastrata in variabila pointer)?
a) &
b) .
c) *
122. Care este tipul expresiei n**pi, in conditiile de mai jos
long n=10, *pi=&n;
a) long
b) int
c) long *
123. Care este valoare expresiei q-p, in conditiile de mai jos:
int t[10], *p=t,*q=&t[9];
a) 9
b) 10
c) t[9]-t[0]
d) 20
-
8/3/2019 47970918 c Test Grila Solved
28/43
124. Pe cati octeti se reprezinta variabila p, declarata ca void *p ?
a) 0
b) 1
c) atatia cati sunt necesari pentru stocarea unei adrese
125. Daca pointerul p indica spre un element al unui tablou, in urma evaluarii expresiei
p+5
a) p nu se modifica
b) p indica 5 elemente dincolo de elementul spre care indica initial
c) se obtine ca rezultat adresa celui de-al 5-lea element dincolo de elementul spre care
indica p
126. Presupunand ca octetii unei variabile sunt memorati incepand cu octetul mai putinsemnificativ, in conditiile
int t[ ] = { 0x0203, 0x1} *p=t;
valoarea expresiei
*p * *(p+1)
a) este 0x203
b) este 0x6
c) este 0
d) depinde de valoarea lui p
127. In conditiile
int t[ ] = { 0x0203, 0x4};
-
8/3/2019 47970918 c Test Grila Solved
29/43
char *p = t;
valoarea expresiei
*p * *(p+1)
a) este 0x203
b) este 0x6
c) este 0x8
d) 0xC
128. In conditiile
int t[ ] = { 0x0203, 0x4};
char *p = t;
valoarea expresiei
*p * *(p+2) + 1
a) este 0x204
b) este 0x7
c) este 0xD
d) 0x9
129. Care dintre urmatoarele operatii sunt legale:
a) inmultirea unui pointer cu un intreg
b) impartirea a doi pointeri
c) compararea a doi pointeri
d) scaderea unui pointer din alt pointer
-
8/3/2019 47970918 c Test Grila Solved
30/43
e) decrementarea unui pointer
f) dereferentierea unui pointer
130. Care este tipul expresiei n**pi, in conditiile de mai jos
int n=10, *pi=&n;
a) long
b) int
c) int *
131. Stiind ca numele unui tablou este sinonim cu adresa primului element al tabloului,
ce diferenta exista intre urmatoarele declaratii:
char s[ ] = "Timisoara";
char *p = "Timisoara";
a) nici una
b) prima declara un tablou, a doua un pointer
c) expresia s==p este falsa ?
d) expresia s==p este adevarata
132. Presupunand ca adresele se reprezinta pe 4 octeti, cat spatiu de memorie se rezerva
prin declaratiile urmatoare:
char *name, buffer[20];
short *pshort, t[20];
double *pdouble, PI;
In ordine, pt name, buffer, pshort, t, pdouble si PI:
-
8/3/2019 47970918 c Test Grila Solved
31/43
a) 1, 20, 2, 40, 8, 8 octeti
b) 4, 20, 4, 40, 4, 8 octeti
c) nici un octet
133. Secventa urmatoare
char *p;
strcpy(p, "Timisoara");
a) este corecta
b) este, principial, gresita
c) va avea un rezultat imprevizibil
134. Secventa urmatoare
char *p=?c:\\temp\\?;
strcat(p, ?lista.txt?);
a) este, principial, gresita
b) este corecta
c) va avea un rezultat imprevizibil
135. Presupunand ca se furnizeaza prototipurile functiilor apelate, ce este gresit in
secventa
int *pi;
char *pc;
scanf("%d",pi);
-
8/3/2019 47970918 c Test Grila Solved
32/43
strcpy(pc,"timisoara");
a) argumentul pi din apelul lui scanf trebuie precedat de operatorul adresa (&)
b) pi trebuie initializat inainte de scanf
c) pc trebuie initializat inainte de strcpy
136. Care este valoarea variabilei r dupa executia secventei urmatoare, parte a definitiei
unei functii:
{
char *string, r;
r = (string == "Timisoara");
}
a) 0
b) 1
c) 0 sau 1, dependent de context
137. Care este valoarea variabilei r dupa executia secventei urmatoare daca, la compilare,
constantele sir de caracter se genereaza indiferent daca mai exista o alta identica:
char *nume=?Timisoara?, r;
main()
{
r = (nume == ?Timisoara?);
}
a) 0 sau 1, dependent de context
b) 0
-
8/3/2019 47970918 c Test Grila Solved
33/43
c) 1
138. Care este valoarea variabilei r dupa executia secventei urmatoare daca, la compilare,
constantele sir de caracter nu se duplica (se genereaza o singura data, indiferent de cateori a fost specificata in textul sursa):
char *nume=?Timisoara?, r;
main()
{
r = (nume == ?Timisoara?);
}
a) 0 sau 1, dependent de context
b) 0
c) 1
139. Ce este gresit in secventa urmatoare, care ar trebui sa rezerve saptiu pentru 10 date
de tip int si sa le initializeze cu 0:
void *malloc(int );
void *p;
p=malloc(10*sizeof(int));
for(i=0;i
-
8/3/2019 47970918 c Test Grila Solved
34/43
140. Care este valoarea lui n dupa executia secventei:
char t[ ]="timisoara", *p,*q,n;
p=q=t;
while(*q++);
n=q-p;
a) n=0
b) n=9
c) n=10
d) n=?\0?-?t?
141. Care este valoarea lui n dupa executia secventei:
char t[ ]="timisoara", *p, *q, n;
p=q=t;
while(*q)
q++;
n=*q-*p;
a) ?a? ? ?t?
b) 10
c) '-t'
b) 9
142. Ce este gresit in secventa:
int t[N], *low=t, *mid, *high=&t[N-1];
-
8/3/2019 47970918 c Test Grila Solved
35/43
mid = ( low + high ) / 2;
a) un pointer nu se poate initializa cu un tablou
b) initializarea lui low, respectiv high e gresita
c) adunarea a doi pointeri este ilegala
d) mid nu poate fi initializat cu o valoare reala (daca low+high e impar!)
143. Ce este gresit in secventa:
char *p;
strcpy(p, "Timisoara");
a) nu se poate copia un sir de caractere intr-un pointer!
b) secventa e corecta
c) pointerul p este neinitializat
144. Date declaratiile:
int t[10], *pi=t;
char *pc=t;
de ce tip sunt valorile expresiilor *pi respectiv *pc?
a) int * respectiv char *
b) int / int
c) int / char
d) pc nu poate fi initializat cu t!
-
8/3/2019 47970918 c Test Grila Solved
36/43
145. Care va fi valoarea pointerului p dupa initializare, daca adresa de inceput a tabloului
t este 0x1A2:
long t[100],*p;
p=&t[6];
a) 0x1A8
b) 0x1BA
c) 0x1C6
146. Daca tab este numele unui tablou, despre expresia *(++tab) se poate afirma ca:
a) un tablou nu poate fi dereferentiat b) expresia e corecta
c) numele unui tablou este o constanta, deci nu poate fi incrementat
147. Daca tab este numele unui tablou, despre expresia ++(*tab) se poate afirma ca:
a) un tablou nu poate fi dereferentiat
b) expresia e corecta
c) numele unui tablou este o constanta, deci nu poate fi incrementat
148. In conditiile de mai jos, cum se poate obtine in p adresa urmatorului element al
tabloului:
int t[N];
char *p=t;
a) p++
b) un char * nu poate fi initializat cu adresa unui int !
c) p+sizeof(int)
-
8/3/2019 47970918 c Test Grila Solved
37/43
d) p=p+sizeof(int)
149. Care este valoarea lui n dupa executia secventei:
char t[]="timisoara", *p,*q, n;
p=&t[1]; q=&t[3];
n=*q-*p;
a) 2
b) secventa este gresita sintactic
c) 0
d) ?0?
150. Care este valoarea lui n dupa executia secventei:
char t[]="timisoara", *p,*q, n;
p=&t[1]; q=&t[3];
n=*q-*p;
a) 2
b) secventa e gresita sintactic
d) ?0?
d) '\0'
156. Cat spatiu de memorie ocupa o variabila structura
-
8/3/2019 47970918 c Test Grila Solved
38/43
a) cat spatiul ocupat de cel mai ?voluminos? dintre membrii
b) egal cu suma spatiilor necesare membrilor
c) cel putin cat suma spatiilor necesare membrilor
157. Care din afirmatiile urmatoare, referitoare la structuri, sunt adevarate:
a) sunt tipuri de date agregate
b) sunt tipuri de date definite de programator
c) sunt tipuri de date predefinite
d) sunt tipuri de date scalare
158 Ce operator se utilizeaza pentru accesul la un membru al unei structuri?
a) ^
b) *
c) &
d) .
159 Poate o structura sa contina ca membru o structura de acelasi tip?
a) da
b) nu
c) depinde de context
160. Care din urmatoarele operatii sunt legale:
a) compararea a doua structuri
-
8/3/2019 47970918 c Test Grila Solved
39/43
b) returnarea unei structuri ca valoare a unei functii
c) adunarea a doua structuri
d) copierea unei structuri
161. Data o variabila structura si o variabila uniune, ambele avand aceiasi membri, caredintre ele ocupa mai mult spatiu in memorie?
a) variabila uniune
b)variabila structura
c) ambele ocupa acelasi spatiu
162. Declaratia int a:3; poate fi o declaratie de membru:
a) al unei structuri
b) al unei uniuni
c) al unui bit-field
d) al oricaruia din cele trei tipuri amintite
163. Expresia p->m este de acelasi tip cu:
a) tipul lui p
b) tipul lui m
c) tipul void *
164. Poate o structura sa contina ca membru un pointer spre o structura de acelasi tip?
a) da
b) nu
-
8/3/2019 47970918 c Test Grila Solved
40/43
c) numai daca este primul membru
d) numai daca este ultimul membru
165. Care din urmatoarele operatii sunt ilegale:
a) compararea a doua structuri
b) returnarea unei structuri ca valoare a unei functii
c) adunarea a doua structuri
d) copierea unei structuri
166. Date declaratiile de mai jos, precizati care din expresiile care urmeaza sunt corecte
struct point{ float x,y;};
struct circle { struct point center;
int radius;
} v, *p=&v;
a) p->center.x
b) p.center.x
c) *p->center.x
d) (*p).center.x
e) v->center.x
f) v.center.x
167. Date declaratiile de mai jos si stiind ca i este o variabila intreaga, precizati care din
expresiile care urmeaza sunt corecte
-
8/3/2019 47970918 c Test Grila Solved
41/43
struct point {int x,y;};
struct rectangle {struct point p1.p2;} *r[N];
a) r[i].p1.x
b) r[i]->p1.x
c) *(r[i]).p1.x (desi nu sunt sigur pt asta, mai verificati)
d) *r[i].p1.x
168. Date declaratiile de mai jos, precizati tipul expresiei *(r[i]).p1.x, i fiind o variabila
intreaga.
struct point {int x,y;};
struct rectangle {struct point p1.p2;} *r[N];
a) struct rectangle
b) struct rectangle *
c) struct point
d) int
169. Care din urmatoarele valori ale argumentului mode, pasat functiei fopen, permitedeschiderea unui fisier text pt actualizare:
a) "at"
b) "rwt"
c) "r+"
d) "wt+"
e) "a+"
f) "rwt+" (mai verificati pt asta)
-
8/3/2019 47970918 c Test Grila Solved
42/43
170. Functia de pozitionare fseek poate fi folosita in cazul stream-urilor deschise
a) pentru citire
b) pentru scriere
c) numai daca stream-ul e deschis pentru actualizare
171. Un stream binar deschis pentru citire (modul "rb") poate fi citit corect cu:
a) fscanf
b) gets
c) getchar
d) fread
172. Functia fscanf poate fi folosita pentru citirea
a) numai a fisierelor text
b) numai a fisierelor binare
d) oricarui tip de fisier ?
173. Functia fputs poate fi folosita pentru scriere
a) numai in fisiere binare
b) numai in fisiere text
d) in orice tip de fisiere
174. Functia printf este:
-
8/3/2019 47970918 c Test Grila Solved
43/43
a) o functie standard de iesire
b) o functie de tiparire la imprimanta
c) o functie de afisare formatata
d) o functie cu lista variabila de argumente
175. Functia fputc returneaza valoarea EOF:
a) numai la sfarsit de fisier
b) numai in caz de eroare
c) in ambele situatii