Documente Academic
Documente Profesional
Documente Cultură
Ce caracteristica a unei variabile este precizata de clasa sa de memorare? Choose one answer.
a. locul unde se vede b. locul unde se creaza c. locul unde poate fi folosita
2
Pe cati bytes se stocheaza variabila v de mai jos? struct { int a: 2; : 0; int b: 3; : 0; int c: 2; } v; Choose one answer.
a. 1 byte b. 3 bytes c. declaratia este gresita sintactic! d. 2 bytes
3
Cand au loc conversii implicite de tip? Choose at least one answer.
a. cand operanzii unei expresii au tipuri diferite b. la citirea datelor de intrare c. cand argumentul actual cu care se apeleaza o functie are alt tip decat argumentul formal corespunzator
cub(x)
x*x*x
6
Date declaraiile de mai jos i tiind c i este o variabil de tipul int, precizai care din expresiile care urmeaz sunt corecte: struct point {int x,y;}; struct rectangle { struct point p1, p2; } *r[N];
7
In conditiile: #include <stdlib.h> ... char t[10], *p=t; int i; for(i=1; i<=10; i++, p++) *p=rand(); /* functie de biblioteca standard care returneaza */ ... /* o valoare pseudo aleatoare de tipul int */ Choose at least one answer.
a. executia secventei poate duce la rezultate imprevizibile b. se initializeaza mai multe elemente decat numarul de elemente ale tabloului t c. nu toate elementele tabloului t vor fi initializate d. executia secventei determina initializarea corecta a elementelor tabloului t e. initializarea lui pointerului p este gresita
Data secventa: union { long populatie; char *nume; } oras; /*...*/ oras.populatie = 172827; oras.nume = "Arad"; printf("oras: %s, locuitori: %ld", oras.nume, oras.populatie); Choose at least one answer.
a. rezultatul (la stdin) este: oras: Arad, locuitori: 172827 b. secventa este compilabila dar gresita functional (rezultatul este gresit) c. rezultatul (la stdin) este: oras: d, locuitori: 172827 d. secventa este gresita sintactic e. rezultatul (la stdin) este: oras: Arad, locuitori: 1098015076
9
In conditiile in care x e declarat ca int x; valoarea expresiei (x) ^ (x) Choose at least one answer.
a. este <= 0 b. este 0 c. este > 0 d. este -1
10
Cate iteratii se vor parcurge la executia urmatoarei secvente? struct { int a:2; int b:5; } v; /*...*/ v.a=v.b=0; while(v.a != 3) v.b = 2*v.a++; Choose one answer.
a. nici una, pt ca secventa e gresita sintactic! b. 3 c. este un ciclu infinit!
11
Care din urmtoarele operaii cu structuri sunt legale: Choose at least one answer.
a. returnarea unei structuri ca valoare a unei funcii b. copierea unei structuri c. compararea a dou structuri d. adunarea a dou structuri
12
Care dintre urmtoarele operaii asupra unui pointer void sunt ilegale? Choose at least one answer.
a. scderea unui pointer din alt pointer b. adunarea unui pointer la alt pointer c. nmulirea unui pointer cu un ntreg d. compararea a doi pointeri e. copierea f. dereferenierea unui pointer
13
Structura de tip FILE asociata fiecarui stream NU contine Choose at least one answer.
a. o variabila (errno) in care se pastreaza codul ultimei erori de I/O b. un indicator de sfarsit de fisier c. un indicator de eroare
14
Funcia fputc returneaz valoarea EOF: Choose one answer.
a. n ambele situaii b. numai la sfrit de fiier c. numai n caz de eroare
15
Care este valoarea expresiei ~0? Choose one answer.
a. 0xF b. 1 c. -1 .
16
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: Choose one answer.
a. x=3.0 si y=10.5 b. x=3.75 si y=10.5 c. x=3.0 si y=10.0 d. x=3.75 si y=10.0
17
Care este valoarea expresiei q-p, n condiiile de mai jos: int t[10], *p=t,*q=&t[9];
18
Care este valoarea expresiei *q - *p in conditiile de mai jos: char t[]="timisoara", *p,*q, n; p=&t[1]; q=&t[3]; Choose one answer.
a. 0 b. 2 c. \x0 Cum t[1] (a carui adresa e stocata in p) si t[3] (a carui adresa e stocata in q) sunt egale cu 'i', rezultatul expresiei *q-*p este identic cu 'i'-'i', adica 0, care ca si data de tip char este '\x0'
19
Date declaraiile de mai jos, precizai tipul expresiei *(r[i]).p1.x, i fiind o variabil ntreag. struct point {int x,y;}; struct rectangle { struct point p1, p2; } *r[N];
20
Care este tipul expresiei n**pi, in conditiile de mai jos: long n=10, *pi=&n; Choose one answer.
a. long * b. int c. long Atat n cat si *p fiind valori de tipul long, valoarea expresiei n * *p este deasemenea de tip long!
21
22
Date declaratiile int n=200, m=200; long r; si presupunand ca sizeof(int) este 2 iar valorile tipurilor intregi sunt implicit cu semn, valoarea expresiei r=n*m este: Choose at least one answer.
a. -25536 b. 40000 c. de tip int d. de tip long
23
Domeniul identificatorilor de variabile globale tine din locul declaratiei pana la Choose one answer.
a. sfarsitul blocului b. sfarsitul programului c. sfarsitul functiei d. sfarsitul textului sursa
24
Dac tab este numele unui tablou, despre expresia *(++tab) se poate afirma c: Choose one answer.
a. expresia este corecta
b. numele unui tablou este o constant, deci nu poate fi incrementat c. un tablou nu poate fi derefereniat
25
Data declaratia float x=2.5; valoarea expresiei 3.0*x+10/4 este Choose at least one answer.
a. 10.0 b. de tip float c. 9.5 d. de tip double
26
Functia printf
este:
27
a. variabilele locale automatice b. adresa de revenire c. definitii de constante simbolice d. valoarea returnata e. valoarea argumentelor actuale f. variabilele globale
28
Care este ordinea de evaluare a expresiilor compuse, daca nu se folosesc paranteze? Choose one answer.
a. in functie de precedenta operatorilor b. intotdeauna de la dreapta la stanga c. aleatoare d. intotdeauna de la stanga la dreapta
29
Daca a este o variabila intreaga, care este valoarea expresiei (a < 'a') || (a > 'z') Choose one answer.
a. depinde de valoarea lui a b. 0
c. 1
30
Data declaratia float x=2.5; valoarea expressiei x=3.0*x+10/4este: Choose at least one answer.
a. 9.5 b. 10.0 c. of type double d. of type float
31
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 Choose one answer.
a. long b. int c. float d. double
32
33
Care din urmatoarele variante reprezinta modalitati de comunicare intre functii? Choose at least one answer.
a. prin variabile globale b. prin variabile locale c. prin argumentele actuale d. prin valoarea returnata e. prin includere f. apel
34
Care din urmatorii modificatori de clasa de memorare pot fi folositi in declaratia unei variabile globale? Choose at least one answer.
a. static b. extern c. auto
d. register
35
Resultatul apelului f(2, 1, 25) al unei functii declarate ca int f(int , ...); si care asteapta argumente de tip long in lista de argumente de lungime variabila Choose one answer.
a. va fi corect b. depinde de implementarea limbajului c. nu va fi corect
36
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; }; Choose one answer.
a. 8 octeti b. 4 octeti c. 12 octeti d. nici un octet
37
Care este valoarea lui n dupa executia secvenei: char t[ ]="timisoara", *p,*q,n; p=q=t; while(*q++); n=q-p; Choose one answer.
a. n=\0-t b. n=0 c. n=10 d. n=9
38
Declaratia register int i; determina crearea variabilei i Choose one answer.
a. depinde de context b. declaratia are ca efect inregistrarea variabilei! c. pe stiva d. intr-un registru
39
Care din urmtoarele valori ale argumentului mode, pasat funciei fopen, permite deschiderea unui fiier text pentru adaugare:
f."rwt+"
40
Ce operator se utilizeaz pentru accesul la un membru al unei structuri?
41
Care din urmatoarele clase de memorare se specifica implicit? Choose at least one answer.
a. static
42
Varianta stocarii unui set de siruri de caractere de lungimi variabile intr-un tablou bidimensional de caractere, comparata cu utilizarea unui tablou de pointeri la char initializati cu adresele unor zone de memorie alocate dinamic si de lungime corespunzatoare lungimii sirurilor este: Choose one answer.
a. la fel de eficienta b. mai putin eficienta c. mai eficienta
43
Care din urmatorii operatori admit operanzi reali? Choose at least one answer.
a. operatorii de deplasare b. operatorul logic de negatie (!) c. toti operatorii aritmetici d. operatorii de incrementare/decrementare
44
Doua functii pot comunica, in conditiile in care nici una nu o apeleaza pe cealalta:
45
Care va fi valoarea pointerului p dupa iniializare, dac adresa de nceput a tabloului teste 0x1A2: long t[100],*p; p=&t[9]; Choose one answer.
a. 0x1C6 b. 0x1A8 c. 0x1BA
46
La preprocesarea unui fisier sursa C Choose at least one answer.
a. se prelucreaza directivele de preprocesare b. se includ functiile de biblioteca c. se obtine o noua versiune a textului sursa d. se obtine codul obiect
47
Care dintre urmtoarele operaii cu pointeri sunt legale: Choose at least one answer.
a. nmulirea unui pointer cu un ntreg b. scderea unui pointer din alt pointer Operatie legala (trece de compilare!) dar care are sens doar daca cei doi pointeri implicati in expresie indica spre elemente din acelasi tablou! Semnificatie: numarul de elemente ale tabloului dintre cele doua adrese spre care indica pointerii! Operatie legala (trece de compilare!) dar care are sens doar daca cei doi pointeri care se compara indica spre elemente din acelasi tablou!
d.decrementarea unui pointer e.dereferenierea unui pointer Operatia de baza asupra unui pointer! Operatorul de dereferentiere: * Semnificatie: expresia *p reprezinta valoarea, de tipul declarat al pointerului, de la adresa stocata in p.
48
Care din afirmaiile urmtoare, referitoare la structuri, sunt adevrate: Choose at least one answer.
a. sunt tipuri de date predefinite b. sunt tipuri de date definite de programator
49
Care este atributul care precizeaza unde (intr-un text sursa C) poate fi utilizat legal identificatorul unei variabile? Choose one answer.
a. vizibilitatea b. domeniul c. durata de viata d. clasa de memorare
50
Stiind ca in evaluarea unei expresii care implica numai operanzi de un tip intreg prima actiune o reprezinta promovarea la int a operanzilor de un tip mai "slab" decat int, valoarea expresiei c + 1, in conditiile: char c = 255; este: Choose at least one answer.
a. 256 b. 0x100 c. de tip char d. de tip int
e. 0
51
Stiind ca "0123456789" este adresa zonei de memorie in care este generata constanta sir de caractere, care este rezultatul evaluarii expresiei "0123456789"[i] daca i=9? Choose one answer.
a. '9' b. expresia e gresita sintactic c. 9 d. '8'
52
Care din urmatoarele valori sunt false din punct de vedere logic? Choose at least one answer.
a. NULL b. 0x1F c. 1F d. '\0' e. 0X00 f. '0'
53
Date declaraiile de mai jos, precizai care din expresiile care urmeaz sunt corecte, stiind ca precedenta operatorului . este mai mare decat cea a operatorului de dereferentiere: struct point{ float x,y;}; struct circle { struct point center; int radius; }v, *p=&v;
54
Tipul lui p, utilizat in expresia p->m este: Choose one answer.
a. tipul lui m b. pointer la o structura c. void *
55
Daca a este o variabila intreaga, care este valoarea expresiei (a < 'a') && (a > 'z') Choose one answer.
56
In conditiile: #include <stdlib.h> ... char t[10]; int i; for(i=0; i<=10; i++) t[i]=rand(); /* functie de biblioteca standard care returneaza */ ... /* o valoare pseudo aleatoare de tipul int */ Choose at least one answer.
a. executia secventei poate duce la rezultate imprevizibile b. secventa este corecta sintactic c. executia secventei determina initializarea corecta a elementelor tabloului t d. secventa este incorecta sintactic
57
Dac tab este numele unui tablou, despre expresia ++(*tab) se poate afirma c: Choose one answer.
a. numele unui tablou este o constanta, deci nu poate fi incrementat b. un tablou nu poate fi derefereniat
58
Care este valoarea variabilei r dup execuia secvenei urmtoare, parte a definiiei unei funcii: { char *string, r; r = (string == "Timisoara"); } Choose one answer.
a. 1 b. 0 c. 0 sau 1, dependent de context
59
Comparata cu varianta sa iterativa din punct de vedere al timpului de executie, utilizarea unei functii recursive este, in principiu: Choose one answer.
a. mai eficienta b. mai putin eficienta c. la fel de eficienta
60
Care este valoarea variabilei r dup execuia secvenei urmtoare dac, la compilare, constantele ir de caracter se genereaz indiferent dac mai exist o alta identic: char *nume=Timisoara, r; main()
{ r = (nume == Timisoara); }
61
Comparata cu varianta sa iterativa din punct de vedere al spatiului de memorie necesar, utilizarea unei functii recursive este, in principiu: Choose one answer.
a. la fel de eficienta b. mai eficienta c. mai putin eficienta
62
Care este valoarea expresiei ~1? Choose one answer.
a. 0xE b. -2 c. 0
63
Care este valoarea expresiei q-p, n condiiile de mai jos: int t[10], *p=&t[1],*q=&t[9];
b. 20 c. 9 d. t[9] - t[0]
64
Ce operator nu poate fi utilizat pentru accesul la un membru al unei structuri?
65
Care dintre urmtoarele operaii asupra unui pointer void sunt ilegale? Choose at least one answer.
a. dereferenierea unui pointer
b. scderea unui pointer din alt pointer c. nmulirea unui pointer cu un ntreg d. adunarea unui pointer la alt pointer e. copierea f. compararea a doi pointeri
66
Care din urmtoarele valori ale argumentului mode, pasat funciei fopen, permite deschiderea unui fiier text pentru actualizare:
67
Structura de tip FILE asociata unui stream contine (intre altele): Choose at least one answer.
a. un indicator de sfarsit de fisier b. un indicator de eroare c. o variabila (errno) in care se pastreaza codul ultimei erori de I/O
68
Care din urmatorii operatori NU admit operanzi reali? Choose at least one answer.
a. operatorii logici pe biti b. operatorul aritmetic rest-modulo (%) c. operatorii logici d. operatorii de deplasare
69
Funcia fputc returneaz valoarea EOF: Choose one answer.
a. n ambele situaii b. numai la sfrit de fiier c. numai n caz de eroare
70
Pe cati bytes se stocheaza variabila v? struct { int a: 2; : 0;
71
Date declaraiile: int t[10], *pi=t; char *pc=t; de ce tip sunt valorile expresiilor *pi respectiv *pc ? Choose one answer.
a. int / char b. int / int c. pc nu poate fi iniializat cu t! d. int * respectiv char *
72
Care din urmatoarele actiuni au loc la compilare? Choose at least one answer.
a. generarea codului obiect
b. analiza sintactica c. editarea de legaturi d. definirea constantelor simbolice e. includerea fisierelor header f. analiza lexicala
73
Functia fscanf poate fi utilizata pentru a citi Choose one answer.
a. atat din fisiere text cat si din fisiere binare b. numai din fisiere text c. numai din fisiere binare
74
Care din afirmaiile urmtoare, referitoare la structuri, nu sunt adevrate: Choose at least one answer.
a. sunt tipuri de date agregate b. sunt tipuri de date predefinite c. sunt tipuri de date definite de programator d. sunt tipuri de date scalare
75
Care atribut al unei variabile indica locul unde este creata o variabila? Choose one answer.
a. durata de viata b. clasa de memorare c. domeniul d. vizibilitatea
76
Dat o variabil structur i o variabil uniune, ambele avnd aceiai membri, care dintre ele ocup mai mult spaiu n memorie?
77
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; }; Choose one answer.
78
Care dintre urmtoarele operaii cu pointeri sunt ilegale? Choose at least one answer.
a. adunarea unui ntreg la un pointer b. mprirea a doi pointeri c. scderea unui pointer din alt pointer d. nmulirea unui pointer cu un ntreg e. dereferenierea unui pointer f. compararea a doi pointeri
79
Care din urmatoarele variante denumeste un mod de reprezentare al datelor intregi? Choose one answer.
a. virgula fixa b. complement fata de doi c. virgula mobila
80
Date declaratiile int n=10, m=4; valoarea expresiei 1.5+n/m este Choose at least one answer.
a. de tip double b. 3.5 c. 4 d. de tip float
81
82
Care este durata de viata a variabilelor globale? Choose one answer.
a. cat dureaza executia programului
83
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; }v; Choose one answer.
a. 4 octeti b. 12 octeti c. 8 octeti d. nici un octet
84
In conditiile in care variabila c este declarata char c; valoarea expresiei c=getchar() != EOF Choose one answer.
a. este 1 b. este 0 sau 1
85
Presupunand ca adresele se stocheaza pe 32 de biti, cati bytes (octeti) de memorie vor fi rezervati in urma declaratiilor de mai jos? extern long count; struct node { long key; struct node *next; }; Choose one answer.
a. 8 bytes b. 4 bytes c. nici unul d. 12 bytes
86
Functia fwrite este:
87
Care este tipul expresiei n**pi, n condiiile de mai jos int n=10, *pi=&n; Choose one answer.
a. int * b. long c. int Atat n cat si *p fiind valori de tipul int, valoarea expresiei n * *p este deasemenea de tip int!
88
Dac pointerul p indic spre un element al unui tablou, n urma evalurii expresiei p+5 Choose at least one answer.
a. se obine ca rezultat adresa celui de-al 5-lea element dincolo de elementul spre care indica p b. p nu se modific c. p indic 5 elemente dincolo de elementul spre care indica iniial
89
Dat o variabil structur i o variabil uniune, ambele avnd aceiai membri, care dintre ele ocup mai mult spaiu n memorie?
90
Ce este un pointer? Choose one answer.
a. o variabil a crei valoare se interpreteaz ca adres b. o adres de memorie c. un indicator
91
Care este valoarea lui n dup execuia secvenei: char t[]="timisoara", *p,*q, n; p=&t[1]; q=&t[3]; n=*q-*p;
92
Fie declaraiile int x=1, *y=&x; Valoarea lui y este:
93
Care din urmatoarele cuvinte rezervate denumesc tipuri de date reale predefinite in C? Choose at least one answer.
a. double b. long c. float d. char e. short f. long double
94
Care din urmtoarele operaii cu structuri sunt ilegale: Choose at least one answer.
a. copierea unei structuri b. compararea a doua structuri c. returnarea unei structuri ca valoare a unei funcii d. adunarea a doua structuri
95
Care dintre urmtoarele operaii cu pointeri sunt ilegale? Choose at least one answer.
a. nmulirea unui pointer cu un ntreg b. dereferenierea unui pointer c. scderea unui pointer din alt pointer d. compararea a doi pointeri e. adunarea unui ntreg la un pointer f. mprirea a doi pointeri
96
Stiind ca "0123456789" este adresa zonei de memorie in care este generata constanta sir de caractere, care este rezultatul evaluarii expresiei "0123456789"[i] daca i=10? Choose one answer.
97
Funcia fputc returneaz valoarea EOF: Choose one answer.
a. numai n caz de eroare b. n ambele situaii c. numai la sfrit de fiier
98
Ce este gresit in urmatoarea definitie a functiei itoa: char *itoa(int n) { char buf[11]; sprintf(buf, "%d", n); return buf; } Choose one answer.
a. integritatea rezultatului din buf nu este garantata in functia apelanta b. nu e nimic gresit c. dimensiunea tabloului buf este prea mica
99
In conditiile de mai jos: #define PI 3.14 int r; valoarea expresiei 2*PI*r este de tip Choose one answer.
a. long b. double c. float d. int
100
Date declaraiile de mai jos, precizai tipul expresiei *(r[i]).p1.x, i fiind o variabil ntreag. struct point {int x,y;}; struct rectangle { struct point p1, p2; } *r[N];
101
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; }v; Choose one answer.
a. 12 octeti b. 8 octeti c. nici un octet d. 4 octeti
102
Care este durata de viata a variabilelor locale? Choose one answer.
a. depinde de clasa lor de memorare b. cat dureaza executia subprogramului c. cateva minute d. cat timp sunt utilizate
103
Functia fscanf poate fi folosita pentru citirea Choose one answer.
a. numai a fisierelor binare
104
Care este valoarea expresiei n**pi, n condiiile de mai jos unsigned char n=100, *pi=&n; Choose one answer.
a. 16, de tip unsigned char b. expresia e gresita sintactic! c. 10000, de tip unsigned int d. 10000, de tip int
105
Fie declaraia de variabile: int *u[3],v[3]; Care dintre atribuiri sunt incorecte?
106
107
Poate o structura sa aiba un membru de acelasi tip? Choose one answer.
a. nu b. da c. numai daca este ultimul membru d. numai daca este primul membru
108
109
110
stdout Choose at least one answer.
a. este un pointer la o structura de tip FILE b. este un stream deschis implicit pentru fiecare program lansat in executie c. ar trebui utilizat pentru afisarea rezultatelor si mesajelor (catre utilizator) produse de program d. ar trebui utilizat doar pentru afisarea rezultatelor
111
Transmiterea argumentelor actuale catre functia apelata (conventia de apel) se face: Choose at least one answer.
a. prin variabile globale b. prin referinta c. prin valoare
112
Ce este contextul de apel al unei functii? Choose one answer.
a. o zona de memorie de pe stiva b. locul din textul sursa in care se apeleaza c. instructiunile (definitia functiei) d. lista argumentelor formale
113
Resultatul apelului f(2, 1L, 25L) al unei functii declarate ca int f(int , ...); si care asteapta argumente de tip long in lista de argumente de lungime variabila Choose one answer.
a. va fi corect b. nu va fi corect c. depinde de implementarea limbajului
114
Ct spaiu de memorie ocup o variabil structur? Choose one answer.
a. egal cu suma spaiilor necesare membrilor
b. ct spaiu ocup de cel mai voluminos dintre membrii c. cel puin ct suma spaiilor necesare membrilor
115
In conditiile in care x e declarat ca int x; valoarea expresiei (~x) ^ (x) Choose at least one answer.
a. este < 0 b. este 0 c. este > 0 d. este -1
116
O uniune este: Choose at least one answer.
a. un tip definit de programator b. un tip predefinit c. o alternativa la utilizarea unei structuri d. un tip agregat
117
Stiind ca valorile datelor de tip intreg sunt cu semn, care este valoarea expresiei ~c daca:
118
Domeniul identificatorilor de variabile locale tine din locul declaratiei pana la Choose one answer.
a. sfarsitul blocului b. sfarsitul textului sursa c. sfarsitul programului d. sfarsitul functiei
119
In conditiile de mai jos, valoarea v.a, la parasirea ciclului while: struct {int a:1; int b:3; } v; v.a=0; v.b=1; while(v.b > 0) {v.a ++; v.b++;} Choose one answer.
a. este -1 b. este 0 c. secventa nu poate fi compilata pentru ca este gresita sintactic! d. este 3
120
Care este rezultatul numeric al evaluarii expresiei a<b<c daca a=-2, b=-1, c=2? Choose one answer.
a. 0 b. TRUE c. 1 d. FALSE
121
Dac pointerul p indic spre un element al unui tablou, n urma evalurii expresiei p=p+5 Choose at least one answer.
a. p indic 5 elemente dincolo de elementul spre care indica iniial b. se obine ca rezultat adresa celui de-al 5-lea element dincolo de elementul spre care indica p
c. p nu se modific
122
Ce operator se utilizeaz pentru dereferenierea unui pointer, adic pentru accesul la valoarea stocat la adresa care este pstrat n variabila pointer? Choose one answer.
a. . b. * c. &