A lgor i tmu l urmato r tes teaza daca s i ru l de carac te re s es te palindrom (citit atat de la stanga la dreapta, cat si de la dreapta la stanga, se obtine acelasi sir de caractere). {i=0; j=strlen(s)-1; while(i<j && s[i]==s[j]) {i=i+1; j=j-1;} if(...) printf(“palindrom”; else printf(“nu este palindrom”); } Care este expresia care poate inlocui punctele de suspensie astfel incat algoritmul sa fie corect? Care din operatiile urmatoare atribuie variabilei float x media aritmetica a valorilor intregi a, b si c? Care din urmatoarele afirmatii despre operatorii din C este falsa? Care din urmatoarele expresii are valoarea 1 daca si numai daca sirul de caractere s, de lungime 10, este obtinut prin concatenarea Care din urmatoarele secvente de instructiuni va afisa (cu un spatiu intre ele) in ordine descrescatoare toate numerele naturale impare mai mici sau egale cu o valoare naturala data a? Care dintre expresiile C de mai jos este echivalenta cu expresia !((a<5)&&(b>7)) ? Care dintre expresiile C de mai jos, are valoarea 1 daca valoarea variabilei intregi x este un numar intreg par si strict pozitiv? Care dintre expresiile C/C++ de mai jos are valoarea 1 dupa executarea secventei de instrucţiuni C: v1=0; v2=0; for(i=1;i<=3;i++) { for (j=1;j<=i;j++) v1=v1+1; for (k=i;k<=3;k++) v2=v2+1; } in care toate variabilele sunt intregi? Care dintre expresiile de mai jos are valoarea 1 dupa executarea secventei de instructiuni C, a=11;b=1; for(i=1;i<=5;i++) { b=b+1; a=a-1; } in care toate variabilele sunt intregi? Care dintre expresiile de mai jos va avea valoarea 1? Care dintre expresiile urmatoare, scrise in limbajul C, are valoarea 1 daca si numai daca valorile variabilelor intregi x si y sunt numere pare? Care dintre instructiunile C de mai jos determina inlocuirea cu 0 a ultimei cifre a numarului natural, cu cel putin doua cifre, memorat in variabila intreaga n? Care dintre secventele de mai jos conduce la memorarea in variabila max a celei mai mari dintre cele n valori intregi retinute in tabloul unidimensional a (in care a[0] este primul element)? Care dintre urmatoarele declaratii sunt corecte sintactic: 1) int ab=30; 2) int a+b; 3) float a1; 4) char 2ab; 5) int m.n; Care dintre urmatoarele expresii are valoarea 1 daca si numai
1
b. i>=j
a. x = (a + b + c) /3; d. <= este operator logic d. strcmp(s,strcat(s,s+5))== 0 c. for (i = a; i >= 1; i--) if (i % 2 != 0) printf(“%d ”, i); c. !(a<5) && !(b>7) a. !((x%2!=0)||(x<=0))
c. v1==v2
b. a==b
c. ‘a’ < ‘b’ c. (x%2==0) || (y%2==0) c. n=n-n%10; b. for(i=0; i
a[i+1]) {max = a[i]; a[i] = a[i+1]; a[i+1] = max;} max = a[n-1];
c. 1, 3
c. (c%a == 0) && (c%b
daca numarul natural c este un multiplu comun al numerelor naturale nenule (unsigned int) a si b? Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul natural nenul memorat in variabila x, de tip int, este divizibil cu 100? Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul natural memorat de variabila x de tip int are exact doua cifre? Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca variabilele x si y memoreaza doua numere naturale pare consecutive? Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca valoarea reala memorata de variabila y nu apartine intervalului deschis determinat de valorile reale distincte memorate de variabilele x si z (x=5)&&(x<10)) ? Care dintre urmatoarele expresii C, are ca valoare cel mai mare dintre numerele naturale nenule memorate in variabilele intregia si b? Care dintre urmatoarele expresii C, are ca valoare cel mai mic dintre numerele naturale nenule, cu cel mult 4 cifre fiecare, memorate in variabilele intregi x si y? Care dintre urmatoarele instructiuni C atribuie variabilei intregi t valoarea -1 daca si numai daca variabilele intregi a si b sunt nenule si au semne diferite? Care dintre urmatoarele instructiuni C determina eliminarea cifrei din mijloc a unui numar natural, cu exact 5 cifre, memorat in variabila x? Care dintre următoarele instrucţiuni C determina inserarea cifrei 7 în fata ultimei cifre a unui numar natural, cu mai mult de 2 cifre, memorat in variabila x? Care dintre urmatoarele instructiuni C este echivalenta cu x =(x+y+z)/2; stiind ca variabilele x, y si z sunt reale? Care dintre urmatoarele instructiuni C sunt corecte sintactic daca x si y sunt doua variabile de tip intreg? Care dintre urmatoarele programe afiseaza diferenta perechilor de elemente din orice tablou initializabil tab cu maximum 12 componente?
2
==0)
d. x%10+x%10/10==0
d. x/100==0 && x/10!=0
d. ((x-y==2) || (y-x==2)) && (x%2==0) b. (z>x) && (z0 a. sqrt(x) == floor(sqrt(x)) d. (n%100%4 == 0) && (n%3 == 0) c. (!(x>=5)) && (!(x>10)) a. (a+b+abs(a-b))/2 a. (x+y-abs(x-y))/2
c. if (a*b<0) t=-1; a. x=x/1000*100+x%100; a. x=(x/10*10+7)*10+x%10; b. x = x/2 + y/2 + z/2; a. if (x < 2) && (x > - 5) {x=x+1; y=y-1;}
a) #include <stdio.h> static int tab[12]={1, 2, 4, 3, 5, 6, 9, 7, 10, 8, 0, 0}; static int dif[6]; void main(void){ int i=0, id=0; while (tab[i] != 0) dif[id++] = tab[i++]tab[i++]; for(id = 0; id<6; id++)
printf("dif[ %d ] = %d\n", id, dif[id]); } Care dintre urmatoarele reprezinta o declaratie corecta pentru o variabila x care memoreaza simultan numele si media a maximum 30 de studenti? Care dintre urmatoarele secvente au ca efect citirea unui caracter din fisierul “C.TXT”? Care dintre urmatoarele secvente calculeaza suma elementelor de pe linia k a unei matrice a, cu m linii (numerotate de la 1 la m; linia de indice 0 este utilizata in alte scopuri) si n coloane (numerotate de la 1 la n; coloana de indice 0 este utilizata in alte scopuri)? Care dintre urmatoarele secvente de instructiuni determina, in mod corect maximul a trei numere? 1) if (a>b && a >c) max = a; else if (b > a && b > c) max = b; else max = c; 2) if (a>b) if (a>c) max = a; else max = c; else max = b; 3) if (a>b) if (a>c) max = a; else if (b>c) max = b; else max =c; 4) if (a>b) if (b>c) max = b; else max = c; else max = a; Care dintre urmatoarele variabile nu isi modifica valoarea in urma executarii secventei de instructiuni: c=2*a-b; a=a-b; a=c-a; b=2*a-c; oricare ar fi valorile lor initiale? (a,b,c sunt variabile de tip int). Care dintre urmatoarele variante realizeaza deschiderea la citire a fisierului text “A.TXT” Care dintre urmatoarele variante realizeaza deschiderea la scriere a fisierului text “B.TXT”? Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan varsta in ani impliniti si media la licenta a unui absolvent? Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan codul de identificare al unui candidat la un examen, exprimat ca un numar natural de cel mult 4 cifre si media obtinuta de acesta la examen, exprimata ca un număr real? Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan coordonatele reale (abscisa si ordonata) ale unui punct in planul xOy? Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan partea reala si partea imaginara a unui numar complex? Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan numaratorul si numitorul unei fractii ireductibile: Care dintre variabilele intregi x, y si z vor avea la finalul executarii secventei de instructiuni, x = y + z; z = x – z; y = z; z = x - y; aceeasi valoare ca inainte de executare? Care dintre variantele de mai jos declara constanta x astfel incat aceasta sa memoreze corect numarul real 3,14? Care este cea mai mica valoare pe care o poate avea expresia C: x/7-x%7 daca variabila x, de tip int, memoreaza un numar natural cu
3
d. struct {char nume[30]; double media;} x[30]; c. f = fopen(“C.TXT”, “r”); fscanf(f, “%c”, &x); fclose(f); d. s = 0; i=1; while(i<=n) {s+=a[k][i]; i++;}
b. 1, 3
b. doar c
c. f = fopen(“A.TXT”, “r”); b. f = fopen(“B.TXT”,”w”); a. struct {float media; b. struct { int cod; float media;} x;
a. struct punct {float ox,oy;} x; c. struct complex{ float im, re;} x; a. struct fractie{int n1,n2;} x;
b. numai y şi z
d. const float x=3.14; a. 0
o singură cifra? Care este instructiunea prin care variabilei x i se atribuie valoarea sumei cifrelor numarului natural format din exact trei cifre, memorat de variabila y? Care este instructiunea prin care variabilei x i se atribuie valoarea cifrei sutelor numarului natural cu cel putin 4 cifre memorat in variabila y? Care este instructiunea prin care variabilei x i se atribuie numarul obtinut prin inversarea ordinii cifrelor numarului natural format din exact 2 cifre, memorat in variabila y? Care este ordinea de executare a instructiunilor urmatoare pentru ca in final variabilele intregi x, y si z sa aiba valori egale, indiferent de valorile lor initiale: { /* 1 */ x = x / 10; /* 2 */ z = x / y; /* 3 */ x = 100; /* 4 */ y = x / 10; } Care este valoarea expresiei 20 / 10 * 2 + 30 / 15 * 2 Care este valoarea expresiei C: (a/b%c<=b)||!(b==a) daca variabilele intregi a, b, c au valorile a=20, b=3, c=5? Care este valoarea expresiei C: 50-(100–300/2/(2+3))? Care este valoarea expresiei C: 9/2*2-5 Care este valoarea expresiei strlen(s) pentru variabila s de tip sir de caractere, declarata si initializata astfel: char s[15]=”Proba_1”; Care este valoarea expresiei: 4000/10/10*2+4*10*10 / 2 Care este valoarea pe care trebuie să o aiba initial variabila intreaga x pentru ca, in urma executarii secventei while (x!=3){ x=x-1; printf(”HH”); } sa se afiseze sirul HHHHHH? Care este valoarea tiparita de secventa de program C: x=30; y=5; z=(x+y)/6.0; z=(int)(z*100); z=z/100; printf(“%0.2f”,z); stiind ca x si y sunt variabile intregi, iar z este o variabila reala? Care sunt valorile finale ale variabilelor intregi x, y si z dupa executarea operatiei de decizie, if (x>1 && y-z>0) x = y-z; else {y = x-1; z = y+x;} daca initial x = 23, y = 14 si z = 25? Care sunt valorile variabilelor intregi a si b dupa executarea instructiunilor urmatoare: { a = 1235; b = a % 10; if ((a-b) % 10 == 0) { a = a / 100; b = a % 100;} if (a == b) a = a *100; } Care sunt valorile variabilelor intregi x si y dupa executarea in ordine a urmatoarelor trei instructiuni: { x = 0x3; y = x + 0x3;
4
a. x=y/100+y/10%10+y%10; a. x=y/100%10; a. x=y%10*10+y/10;
b. 3, 4, 2,
c. 8 b. 1 c. - 20 a. 3 a. 7 b. 280
c. 6
c. 5.83
c. x = 23, y = 22, z = 45
d. a = 1200 si b = 12
d. x= 0 si y = 6
x = x - 3; } Care va fi continutul fisierului “H.TXT” in urma executarii programului urmator? #include <stdio.h> FILE *f; char x, y, z; void main(){ f = fopen(“H.TXT”,”w”); fprintf(f,”Ieri %d\n”,13); fprintf(f,”Azi %d”,14); fprintf(f,”Maine %d\n”,15); fclose(f); } Care vor fi valorile afisate dupa executarea secventei char s1[20]=”variabila”, s2[20]=”varianta”; if(strcmp(s1,s2)<0 && strlen(s1)<strlen(s2)) printf(”%s %s”,s1,s2); else printf(”%s %s”,s2,s1); daca variabilele s1 si s2 sunt de tip sir de caractere? Care vor fi valorile variabilelor intregi a si b dupa executarea urmatoarelor instructiuni: {if (a = 10, b = a+1, a != b) b++; else a++; a*=b;} Cate valori distincte, numere naturale, poate primi variabila x pentru ca valoarea expresiei x/2/2 scrisa in C sa fie egala cu 1? Ce se va afisa in urma executarii secventei de instructiuni char a[10]="Examen"; n=strlen(a); strcpy(a+1,a+n-1); printf("%s",a); considerand ca s este o variabila sir de caractere, iar n o variabila de tip intreg? Ce se va afisa în urma executarii secventei de program if(strcmp(x, y) > 0) printf(“%s”,x); else if(strcmp(x,y) < 0) printf(“%s”,y); else printf(“imposibil”); daca variabila x memoreaza cuvantul examen, iar variabila y memoreaza cuvantul banal? Ce se va afisa in urma executarii secventei de program: for(i = 0; i < strlen(x); i++) if(x[i] >= ‘A’ && x[i] <=’N’) x[i] = x[i] + ‘a’-‘A’; printf("%s", x); stiind ca i este o variabila de tip intreg, iar variabila x memoreaza initial sirul de caractere ExAMeNe? Ce va fi afisat pe ecran in urma instructiunii printf(“%6.3f\n”, 45.23); ? Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunilor de mai jos? strncpy(s,strstr(″examen″,″am″),4); s[4]='\0'; (4p.) Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunilor de mai jos? strncpy(s,strstr("Informatica","form"),strlen("EXA09")); s[5]='\ 0'; Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunii de mai jos?
5
b. Ieri 13 Azi 14 Maine 15
c. varianta variabila
b. a = 120, b = 12
b. 4
a. En
b. examen
d. examene
b. 45.230 a. amen b. forma b. ada
s=strstr(strnset("Olimpiada",'#',strlen("2009")),"ad"); Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunilor de mai jos? s=strncpy(s,strstr("informatica","form"),strlen("LIC009")); s[6]='\0'; Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunii de mai jos? s=strcat(strncpy(s,"informatica",strlen("2008")),"LIC"); Consideram ca variabila s memoreaza sirul de caractere examen. Care va fi valoarea lui s dupa executarea instrus[0]= ‘E’;s[strlen(s)-1]= ‘N’;s[strlen(s)/2-1]= ‘A’;s[strlen(s)/ 2]= ‘M’. Consideram ca variabila s memoreaza sirul de caractere mama. Care va fi valoarea lui s dupa executarea instructiunilor de mai jos? s[0]=′M′; s[strlen(s)-3]= ′A′; Consideram declararea struct student{ char nume[10], prenume[20]; float nota1,nota2; } x; Folosita pentru a memora numele, prenumele si cele 2 note ale unui student (verificare, laborator). Care dintre instructiunile de mai jos calculeaza in variabila reala m media aritmetica a notelor studentului ale carui informatii sunt memorate in variabila x? Consideram declararea struct student{ char nume[10],prenume[20]; float medie; }p; folosita pentru a memora numele, prenumele si media unui student. Care dintre expresiile de mai jos are ca valoare prima litera a numelui unui student ale carui informatii sunt memorate invariabila p? Consideram declararea: struct punct{ int x,y; } p; Care dintre urmatoarele instructiuni este corecta din punct de vedere sintactic? Consideram urmatoarea declaratie: struct produs {char denumire[10]; int pret;} p; Cum se poate accesa prima litera a denumirii unui produs ale carui caracteristici sunt memorate in variabila p? Consideram variabila x care memoreaza sirul de caractere ABAC. Care dintre urmatoarele instructiuni conduc la afisarea caracterului B? Consideram variabilele intregi i si j. Care dintre urmatoarele secvente de instructiuni C determina afisarea pe ecran , in urma executarii, a succesiunii de cifre 55?
Considerand ca variabila f este de tip fisier (FILE *), care dintre urmatoarele instructiuni verifica daca s-a ajuns la sfarsitul fisierului indicat de f? Considerand declararea struct { int a, b; } x; care dintre urmatoarele secvente de instructiuni realizeaza in mod corect citirea de la tastatura a valorilor celor doua campuri ale variabilei x?
6
a. format
b. infoLIC
c. ExAMeN
a. MAma
a. m=(x.nota1+x.nota2)/2;
a. p.nume[0]
c. p.x=7;
c. p.denumire[0] a. printf("%c",x[strlen(x)3]); a. i=5; j=6; while(j>4){ printf(”%d”,i); j--; } b. if (feof(f)) printf(“final”); else printf(“mai este”); c. scanf(”%d %d”, &x.a,&x.b)
Considerand declararea struct { int a, b; } x; care dintre urmatoarele secvente de instructiuni afiseaza valorile memorate in cele doua campuri ale variabilei x, separate printr –un spatiu? Considerand declararile struct cerc {float raza; int x,y;}; cerc c; care dintre urmatoarele referiri este corecta din punct de vedere sintactic Considerand declararile struct punct{float x,y;}; struct fig { char tip; punct a,b,c;} fig e; care dintre urmatoarele referiri este corecta din punct de vedere sintactic ? Considerand variabila x de tip float si variabila de tip int a, care va fi secventa de caractere afisate in urma executarii secventei de instructiuni(s inseamna un spatiu): x = -4.3; Cum se poate accesa prima litera a denumirii unui material ale carui caracteristici sunt memorate în variabila m, declarată prin: struct material{ char denumire[20]; int pret;} m; Cum se poate accesa prima litera a denumirii unui produs ale carui caracteristici sunt memorate in variabila p, declarata prin: struct produs{ char denumire[15]; int pret;}p; Cum se poate accesa prima litera a numelui unei persoane ale carei date de identificare sunt memorate in variabila p, declarata prin: struct persoana{ char nume[20],prenume[20]; int varsta;} p; Cum se poate accesa prima literă a numelui unui student ale carui date de identificare sunt memorate in variabila e,declarata prin: struct student{ char nume[20],prenume[20]; int varsta;}e; Daca a, b sunt variabile de tip int, iar x si y sunt variabile de tip float, stabiliti care dintre urmatoarele secvente de atribuiri sunt incorecte: 1) b = 2; a = b/2; 2) x = 8; y = 10; a == x+y; 3) x = 4; b = 2; y = x/b; 4) x == 20; y == 10; x =(x+y)/2; 5) a = b = 5; x = a+b; Daca n este un numar natural (intreg pozitiv), ce realizeaza urmatoarea secventa? {p=1; while(n) p *= (n--); } Daca variabila s de tip sir de caractere memoreaza sirul INFORMATICA atunci strlen(s) are valoarea?
7
a. printf(”%d %d”, x.a,x.b);
b. c.x
d. e.a.x
d. 4s4.30s0
d. m.denumire[0]
c. p.denumire[0]
a. p.nume[0]
b. e.nume[0]
c. 2, 3, 4, 5
c. Calculeaza in variabila p valoarea lui n! d. 11
Determinati valoarea expresiei ((int)fabs(-14.2)) % 7 Determinati valoarea expresiei fabs(-11.2) + sqrt(floor(16.23)). Dintre tipurile simple de date face parte tipul: Elementele tabloului bidimensional 1234 12 13 14 5 11 16 15 6 10 9 8 7 cu 4 linii si 4 coloane, sunt toate numerele naturale cuprinse intre 1 si 16 asezate in spirala, incepand cu primul element al primei linii si continuand in sens invers trigonometric. Care este cel mai mare numar situat in zona triunghiulara de sub diagonala secundara (exclusiv diagonala secundara), in cazul unui tablou bidimensional cu 5 linii si 5 coloane generat dupa aceeasi regulă? Fie declararile: struct student{ char nume[30]; float nota;}; student x; Dacă variabila x retine informatii despre un student, precizati care este varianta corecta ce afisează prima litera din numele acestuia? Fie declaratiile: int a[5] = {1, 2,4, 3, 5}; int b[4] = {4, 2, 1, 3}; atunci a[b[0]] este: Fie definitia: int a = 5, b = 3, c = 1, d = 3; Care dintre urmatoarele expresii logice au valoarea 1 (adevarat): 1) a < b || c) 2) (b == d && c || a >= b) 3) (c && d > b) 4) a > b || !(d3) && (a<15)) || (a!=b) Care dintre expresiile C de mai jos ii este echivalentă? Fie expresiile A = 18 - 3 +2; B = 18 + 7 / 3 +2; C = 2.3 + 3%; D = 3 + 7.0/3; E = 3 + 4 % 2.3; F = 24 % (7 + 1); Care din aceste expresii sunt corecte? Fie instructiunea: if (x>y) if (y>z) if(z>x) s = x+y+z; else p = x*y*z; O secventa de instructiuni echivalenta cu aceasta, dar care foloseste o singura data cavantul cheie if, este: Fie programul C: #include <stdio.h> void main(void){ int a = 7, b=5, c = 2; if(a > b > c) printf("Da!"); else printf("Nu!"); } Care este rezultatul acestuia (ce se afiseaza)? Fie programul: #include <stdio.h> void main(void){ int a=0, b=0; /* definire cu initializare */ int s = 6; a = 5, /* incarca a b=2; incarca b */ s = (a*b)/2;
8
c. 0 d. 15.2 a. double
d. 22
b. printf(“%c“,x.nume[0]);
c. 5
d. 1, 2, 4
d. 9 b. !((a<=3) || (a>=15)) || (a!=b) b. A, B, D, F d. if(x>y && y>z) p = x*y*z;
b) Mesajul "Nu"
b) 0
printf("s= %d\n", s); } Care este valoarea variabilei s la incheierea executarii programului: Fie programul: #include <stdio.h> void main(void){ int a=1, b=3; double f = 0.6; f = a/b; printf("f= %7.5lf\n", f); } Care este valoarea variabilei f afisata in urma executarii programului: Fie secventa C: p=1; n=279; while (n>=100) { p=p*10; n=n-100; } Cate atribuiri se executa, in total, in secventa alaturata, daca n si p sunt variabile de tip intreg? Fie secventa de instructiuni C: x=4; y=6; while (y==6) y=y+1; if (x==y) x=x+1; Care este numarul total de atribuiri efectuate la executarea secventei de instructiuni? Fie secventa de instructiuni: {x=x-1; y=2*x+y; x=2*x+1;} Care au fost valorile variabilelor x si y, de tip int, la inceputul executarii secventei de instructiuni date, daca la finalul executarii x are valoarea 2007 iar y are valoarea 2009. Fie secventa: a = 99; while (a >=1) {printf(“%d\n”, a); a=a-2;} Prin executarea acesteia se afiseaza: Fie secventa: {char c; for c=’A’; c <=’Z’; c++) printf(“%d”, c);} Prin executarea acesteia se obtin: Fie secventa: for(j=1; j<=5; j++) for (i=1; i<=3; i++) a[i][j] = i+j; Prin executarea acesteia, tabloul a va avea urmatorul continut Fie tabloul unidimensional v si secventa for (j = k; j>=q; j--) v[...] = v[j]; Cu ce expresie trebuie inlocuite punctele de suspensie astfel incat in urma executarii secventei elementele v[q], v[q+1], ..., v[k] sa se deplaseze cu p-1 vpozitii spre dreapta? Fie v un tablou unidimensional cu n elemente de tip intreg, iar n un numar natural nenul (n <=100) si secventa urmatoare: {i=0; while (i
9
c) 0.00000
a. 4
c. 2
c. x = 1004 si y = 3 b. numerele naturale impare mai mici ca 100 b. numerele naturale din intervalul [65, 90] d. 2 3 4 5 6 32345 43456 c. p-1+j
b. n ori
c. {p = 0; for(k=1; k<=n; k++) if (v[k]>0 && !p) p = v[k];} b. for(int i=2; i<=n;
(n >=2). Stiind ca primul element din tablou se afla pe pozitia 1 (pozitia 0 este utilizata in alte scopuri), indicati care dintre urmatoarele secvente atribuie variabilei intregi max cea mai mare valoare din tabloul v: Fie x o variabila care memoreaza un numar natural. Care dintre urmatoarele expresii C are valoarea 0 daca si numai daca numarul memorat de x nu este divizibil cu 3? Fie x un număr natu ra l cu exact 4 cifre. Care dintre urmatoarele instructiuni C/C++ determina, in urma executarii, eliminarea cifrei sutelor numarului memorat de variabila x? Fiecare dintre variabilele intregi x si y memoreaz cate un numar natural. Care dintre expresiile C de mai jos are valoarea 1 daca si numai daca numarul memorat in x este strict mai mare decat 0 si numarul memorat in y este strict mai mare decat 5? Fiecare dintre variabilele intregi x, y si t memoreaza cate un numar natural de cel mult 4 cifre. Stiind ca x
10
i++)if(v[i-1]>v[i]) v[i] = v[i-1]; max = v[n]; c. (1-x%3)*(2-x%3)
d. x=x/1000*100+x%100; c. x*(y-5)>=0
b. (t>=x) && (t<=y)
a. (t<=x) || (t>=y)
d. 210
c. mod b. revers(v, p, q); revers(v, p+1, q-1); c. void s(unsigned int *, unsigned int *) { ... }
a. t=x.b; x.b=y.b; y.b=t;
b. P.y==0 a. are valoarea 1 pentru orice numar natural x. a. int v[] = {1, 4, 3, 2, 1, 6, 5, 4, 3, 10};
if (v[i] == i+1) star(i+2); else star(i+1); }} Pentru care dintre declaratiile urmatoare, apelul star(0) produce 7 asteriscuri (stelute)? In secventa for ( i=k+1; i<=n; i++) for (j=1; j<=n; j++) v[i-1][j] = v[i][j]; n=n-1; variabila v memoreaza elementele unei matrice cu liniile si coloanele numerotate de la 1 la n, iar toate celelalte variabile sunt intregi. Daca 1<=k=i+1;j--) printf(”%d”,j); instructiunea de afisare se va executa de un numar de ori egal cu: In secventa de instructiuni C: x=20; y=5; x=x+y; y=x-2*y; x=y+x;
11
a. eliminarea liniei k din matrice
a. s1, s2, s3 retin siruri identice de caractere
a. 7
a. 28
d. 56
a. 24
a. 24
d. 40
variabilele x si y sunt intregi. Ce valoare va retine variabila x dupa executarea acesteia? In secventa de instructiuni, y=1; if (k>0) if (i!=j) y=0; else y=2; variabilele i, j, k si y sunt de tip intreg. Pentru care dintre urmatoarele seturi de valori ale variabilelor i,j si k variabila y va avea valoarea 1 in urma executarii secventei? In secventa de instructiuni, if (k>0) if (i!=j) x=0; else x=1; else x=2; if (i!=j) if (k>0) y=0; else y=2; else y=1; variabilele i, j, k, x si y sunt de tip intreg. Pentru care dintre urmatoarele seturi de valori ale variabilelor i, j si k variabilele x si y vor primi valori diferite intre ele in urma executarii acestei secvente? In secventa de instructiuni, if (k>0) if (i!=j) y=0; else y=1; else y=2; variabilele i, j, k si y sunt de tip intreg. Pentru care dintre urmatoarele seturi de valori ale variabilelor i, j si k variabila y va avea valoarea 1 in urma executarii secventei? In secventa de instructiuni: y=x; while(x<=3) { printf("*"); y=y+1; x=x+y; } variabilele x si y sunt de tip int. Care este valoarea pe care trebuie să o aiba initial variabila x daca la finalul executarii secventei s-a afisat un singur caracter asterisc (*)? In secventa urmatoare de instructiuni, n si y sunt variabile intregi. {n=156; y = 770; while(n*y > 0) if (n >y) n = n%y; else y = y%n; y = y+n; } Valoarea variabilei y la finalul executarii secventei este: In secventa urmatoare, variabilele n, x si y sunt de tip intreg. {x = 1; y = x-1; do{ y=x*(x-1)+y; x++; }while(x <=n); } Daca valoarea variabilei n este un numar naural nenul, de cate ori este evaluata expresia logica x <= n in timpul executarii secventei? În secvenţa: p=1; for(i=1;i<=4;i++)
12
a. k=0; i=5; j=5
d. k=0; i=5; j=5
c. k=10; i=5; j=5
a.0
c. 2
a. de n2 ori
a. p=p*a[5-i][i]*a[i][5-i];
.... variabila a memoreaza un tablou bidimensional cu 4 linii si 4 coloane, numerotate de la 1 la 4, cu elementele reale. Variabila p este reală, iar i este de tip întreg. Care dintre instructiunile de mai jos poate inlocui punctele de suspensie astfel incat secventa sa determine memorarea in variabila p a valorii produsului celor 8 elemente aflate pe diagonalele matricei In secventele C urmatoare toate variabilele sunt de tip intreg si memoreaza numere cu cel mult 3 cifre. Care dintre variantele de mai jos determina interschimbarea valorilor memorate de variabilele Parametrii utilizati la apelul unei functii, se numesc: Pentru a memora simultan numele şi media la ‚Programare Procedurala’ a unui student in variabila e, se poate utiliza declararea; Pentru care dintre perechile de valori de mai jos expresia C: (a%100==b%100) && (a>99) || (b>99) are valoarea 1? Pentru declararea struct student {char nume[20]; int nota;} e1,e2; precizati care dintre instructiunile de atribuire este gresita: Pentru declararea unei variabile care memoreaza un cuvant avand maximum 25 caractere, putem utiliza sintaxa: Pentru definitia alaturata a functiei ex(), stabiliti ce se afiseaza la apelul ex(120)? void ex(int x){ if (x != 0){ printf(“%d”, x %10); ex(x/10); } } Pentru o matrice t cu 8 linii si 8 coloane, numerotate de la 0 la 7, cu elemente numere intregi, secventa de program z=0; for(i=0;i<8;i++) for(j=8-i;j<8;j++) z=z+t[i][j]; determina memorarea in variabila intreaga z a sumei tuturor elementelor situate: Pentru o valoare naturala mai mare decat 1 memorata in variabila globala n, subprogramul urmator afiseaza cel mai mare divizor al lui n, mai mic decat n, la apelul divi(n). void divi(long i){ if ( ... == 0) printf(“%ld”, ...); else divi(i-1); } Cu ce expresii trebuie completate punctele de suspensie? Pentru un tablou bidimensional a cu 10 randuri si 10 coloane, stabiliti ce calculeaza secventa de program urmatoare, in variabila s: s = 0; for (i = 0; i<10; i++) for (j = i; j <10; j++) s+=a[i][j]; Pentru un tablou x declarat global, cu 10 componenteintregi, stabiliti care sunt valorile memorate de componentele tabloului x in urma apelului ex(0, 9), daca functia ex este definita astfel: void ex(int i, int j){ if(i <= j) { x[i] = i; x[j] = j; ex(i+1, j-1); if (i % 2 != 0) {x[i]=j; x[j]=9-x[i];} }
13
b. a=a+b; b=a-b; a=a-b; c. parametri actuali d. struct {char a[40]; float b;} e; a. a=1003 şi b=3 a. e1=e2+1; c. char c[26];
c. 021
d. strict sub diagonala secundara
a. n % i si i
c. Suma elementelor situate deasupra diagonalei principale, inclusiv diagonala principala c. (1, 9, 3, 7, 5, 6, 4, 8, 2, 10)
} Prototipul corect al unei functii care primeste doua numere intregi ca primi doi parametri (de intrare) si determina media aritmetica si produsul celor doua numere, pe care le transmite apelantului prin urmatorii doi parametri este: Se considera algoritmul: 1. citeste n; a = 0; b = 1; k = 2; 2. Cat timp k0) for (j=1; j<=n; j++) {printf(“%d”,j); f(n-1);} } Ce se afiseaza ca urmare a apelului f(2)? Se considera definitia long f(int n, int k){ if (n == k || k == 1) return 1; if (n < k) return 0; long s=0, i; for (i=1; i<=k; i++) s+=f(n-k,i); return s; } Stabiliti ce valoare returneaza apelul f(6,3). Se considera definitia: long f(int n){ if (n == 0) return 1; else if (n == 1) return 4; else return f(n-1) - f(n-2); } Stabiliti ce valoasre returneaza apelul f(7). Se considera definitia: long f(int x, int y){ if (x == y || x == 0) return 1; else return f(x,y-1)+f(x-1,y-1); } Ce valoare returneaza apelul f(8,10)? Se considera fisierul MAIN.CPP al carui continut este: #include <stdio.h>
14
c. void calcul (int, int, double *, int *);
c. 0, 1, 1, 2, 3, 5, 8
c. p.aria = p.latura * p.latura;
c. {s.x = f1.x * f2.y + f1.y * f2.x; s.y = f1.y * f2.y;}
d. char
d. 1121
a.3
d. 4
b. 45
a) Se afiseaza: Programare procedurala
extern char *a; void main(void){ printf("%s\n", *a); } si fisierul F1.CPP al carui continut este: char a[] = "Programare procedurala\n"; Prin analiza programului se constata: Se considera functia f al acarui prototip/antet este bazat pe: void f(int a[100][100], int n, int m, int i, intj); Functia precizata realizeaza interschimbarea liniilor i si j ale tabloului transmis prin parametrul a, care are n linii si m coloane. Pentru a ordona crescator numerele de pe coloana a 3-a a tabloului a, functia f se apeleaza in timpul executarii secventei: for (i=0; ia[j][3]) f(a, n, m, i, j); de un numar de ori egal cu: Se considera programul #include <stdio.h> void main(void){ int s; int k; for (k = 1; k <= 10; ++k) s += k; printf("Suma primelor 10 de numere naturale nenule este %d\n", s); } Ce afiseaza programul: Se considera programul #include <stdio.h> void main(void){ int s=0; int k; for (k = 1; k <= 10; ++k); s += k; printf("Suma primelor 10 de numere naturale nenule este %d\n", s); } Ce afiseaza programul: Se considera programul #include <stdio.h> void main(void){ int s=0; int n, k; printf("N = "); scanf("%d", &n); for (k = 1; k <= n; s+=++k); printf("Suma primelor %d numere naturale nenule este %d\n", n, s); } Valoarea variabilei s pentru n = 10 este: Se considera programul #include <stdio.h> void aplic(int x, int *y){x+=3; (*y)-=2; printf(“%d, %d”, x, *y);} void main(void){int x=12, y=20; aplic(x, &x); printf(“,%d,”,x); printf(“%d,”,y);aplic(y,&y); } Ce se va afisa in urma executarii acestuia: Se considera programul C: #include <stdio.h> int f(void){ int i = 0; return (i++); } int g(void){static int x = 0; return (x++); } void main(void){ int k; for (k = 0; k < 3; k++) printf("F %d\n", f());
15
c. n
b) intotdeauna 55
b) intotdeauna 11
d) 65
b. 15,10,10,20,23,18
b) F0 F0 F0 G0 G1
for (k = 0; k < 3; k++) printf("G %d\n", g()); } Analizati modul de functionare si precizati care este iesirea acestui program Se considera programul C: #include <stdio.h> void main(void){ int k[5] = {1, 2, 3, 4, 5}, i=7; for(i = 1; i<= 5; i++) printf("%d, ", k[i]); printf("\n"); }Care este rezultatul obtinut in urma executarii programului: Se considera programul C: #include <stdio.h> void main(void){ char c; c = 0xFF; if(c == 0xFF) printf("Da\n"); else printf("Nu\n"); } Ce se afiseaza? Se considera programul C: #include <stdio.h> void main(void){ int x, y=10; x = 1; y = x << 2 + 1; printf("%d\n", y); y = 7; } Care este valoarea variabilei y ce se afiseaza prin executarea programului? Se considera programul C: #include <stdio.h> void main(void){ int x, y=10; x = 7; y = (x = 1)? (-5) : 7; printf("%d\n", y), y = 8; } Care este valoarea variabilei y ce se afiseaza prin executarea programului: Se considera programul C: #include <stdio.h> void main(void){ int k; clrscr(); for(k = 2; k<=10; ++k){ switch(k){ case 2: case 3: case 5: case 7: printf("k = %d, Da\n", k); break; defualt: printf("k = %d, Nu\n", k); break; } } } Ce afiseaza programul in urma executarii? Se considera programul C: #include <stdio.h> void main(void){ int k; for (k = 1; k<= 10; k++); printf("k = %d , sqr(k) = %d\n", k, k*k); } In urma executarii acestuia se afiseaza: Se considera programul C: #include <stdio.h> #define MAX 10;
16
G2
d) 2, 3, 4, 5, 7
b) Nu
d) 8
a) -5
a) k = 2, Da k = 3, Da k = 4, Nu k = 5, Da k = 6, Nu k = 7, Da k = 8, Nu k = 9, Nu k = 10, Nu
b) k = 11, sqr(k) = 121
b) Afiseaza pe 10 rinduri secventa Succes!
void main(void){ int k; for (k=MAX k>0; --k) printf("Succes!\n"); } Atunci: Se considera programul C: #include <stdio.h> void main(void){ int k1 = 12, k2 = 3; if (k1 & k2) printf("Ambele numere sint nenule\n"); else printf("Cel putin un numar este zero\n"); } Prin executarea acestui program se obtine: Se considera programul C: #include <stdio.h> int a[3][3]={{1, 2, 3}, {4, 5, 6}, {7, 8, 9}}; void main(void){ printf("Elementul de pe rindul cu indicele 1\n"), printf(" si coloana cu indicele 2 este %d\n", a[1,2]); } La executarea programului, valoarea afisata este: Se considera programul C: #include <stdio.h> #include void bit(const unsigned short int k){ unsigned short int x = (1 << 16); int i; for(i = 0; i<16; i++) { if ((x & k) != 0) printf("%c", '*'); else printf("%c",'-'); x >>= 1; } printf("\n"); } void main(void){ bit(0x55AF); } La executare acesta afiseaza: Se considera programul C: #include <stdio.h> void F(int *a, int b){ b +=*a; (*a)*=b; printf(“%d %d “, *a, b); } void main(void){ int x = 5, y = 7; F(&x, y); printf(“%d %d“, x, y); } Ce se va afisa in urma executarii? Se considera programul. Analizati textul si identificati rezultatele obtinute in urma executarii acestuia. #include <stdio.h> static void mp( int c[3][3], int a[3][3], int b[3][3]){ int i, j, k; for(i = 0; i < 3; ++i){ for(j = 0; j < 3; ++j){ c[i][j] = 0; for(k = 0; k < 3; ++k){ result[i][j] += a[i][k] * b[k][j]; }} }}
a) Mesajul redat prin "Cel putin un numar este zero\n"
d) O valoare din memoria volatila din afara spatiului
b) ---------------- (16 simboluri)
c. 60 12 60 7
a) 40 18 42 14 13 20 52 34 62
17
static void pm( int m[3][3]){ int i, j; for (i = 0; i < 3; ++i){ for (j = 0; j < 3; ++j) printf("%o \t", m[i][j]); printf("\n"); }} void main(void){ int x[3][3] = {{4, 8, 2}, {3, 1, 1}, {8, 8, 2} }; int y[3][3] = {{3, 4, 5}, {3, 0, 2}, {2, 1, 3} }; int z[3][3]; mp(z, x, y); pm(z); } Se considera programul: #include <stdio.h> void main(void){ int n1, n2; printf("n1 = "), scanf("%d", &n1); printf("n2 = "), scanf("%d", &n2); if (n2 =! 0) printf("n1/n2 = %d\n", n1/n2); else printf("Impartire prin ZERO\n"); } Ce se afiseaza pentru n1 = 8 si n2 = 16? Se considera programul: #include <stdio.h> void main(void){ float treime = 1.0/3.0; float unu = 1.0; if ((treime+treime+treime) == unu) printf("Da!\n"); else printf("Nu\n"); } Se considera secventa C: y=0; do{ x=x/10; y++; } while(x%100==0); Care este valoarea pe care poate sa o aiba initial variabila intreaga x daca, la sfarsitul executării secventei, variabila intreaga y are valoarea 2? Se considera secventa de instructiuni: {char a[]=”aabbddeff”; char b[] =”aabbdeeff”’ if (strcmp(a, b) == 0) printf (“egalitate”); else printf(“%s “,b); } Care este rezultatul obtinut in urma executarii? Se considera secventa: {int i, j; for (i = 1; i
18
b) n1/n2 = 8
c) Afiseaza "Nu!"
b. 5000
a. aabbdeeff
d. 28
d. a = 0 si b = 30
d. a = 6, b = 0
{ int a =82, b = 24; a = a % 2 + b / 2 / 2; b = 2 * a % 2; a = a + b; b = a % 2 + b + 10 % 2; } Care sunt valorile finale ale variabilelor a si b? Se considera tabloul bidimensional a cu n linii numerotate de la 0 la n-1 si m coloane numerotate de la 0 la m-1. Ce reprezinta elementul a[n-1][p] dupa executarea secventei de program: p=0; for (i=1;i<m;i++) if (a[n-1][p] static int div(int *x){ int k = 5; k = k/*x; return k; } void main(void){ int n = 5; printf("%d\n", div(&n)); } Atunci: Se considera un tablou bidimensional a cu n linii si n coloane, numerotate de la 1 la n, cu elemente numere intregi. Ce reprezinta valoarea variabilei intregi x, dupa executarea secventei de program: x=0; for(i=1;i<=n; i++) x=x+a[i][i]; Se considera un tablou bidimensional a, format din numere naturale, cu n linii si n coloane, numerotate de la 1 la n. Ce reprezinta valoarea variabilei x, dupa executarea secventei de program: x=a[n][1]; for(i=n;i>=1;i--) if (x
19
a. cel mai mare element de pe linia n-1
d. 1361015
a) Programul afiseaza valoarea 1
a. Suma elementelor de pe diagonala principală a tabloului a
b. cel mai mare număr de pe diagonala secundară a tabloului a
b. 7, 16, 10
c. int f(int a, int b){return a%b;} b. 5
{ y = x[1]; for (i = 0; i<=4; i++) if (y < x[i]) y = x[i]; printf(“%d”, y); } Ce se va afisa in urma executarii acestei secvente? Se considera variabila a care memoreaza un numar cu exact 6 cifre. Care dintre expresiile C de mai jos are ca valoare numarul format din cele doua cifre din mijloc ale valorii memorate in a? Se presupune ca lucrati pentru o casa de software americana si vi se cere sa afisati 'un milion' in scrierea americana , adica 1,000, 0000. Secventa de cod potrivita este: Stabiliti care dintre urmatoarele declaratii de variabile sunt corecte: 1) float 1t, 2t; 2) int a[1..10]; 3) int x, y; 4) string s; 5 ) double e; v; Stabiliti care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul intreg memorat in variabila x nu apartine intervalului (-a,-b)u[c,d], unde a, b, c si d sunt numere reale pozitive. Stabiliti care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul intreg memorat in variabila x nu apartine intervalului (-a,-b], unde a si b sunt valori reale pozitive astfel incit b < a. Stabiliti care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul intreg x, nu apartine intervalului A=(- 10,-2)u[50,100]? Stabiliti ce se afiseaza in urma executarii secventei de instructiuni C y=10.1234; x=(int)(y*100)/100; printf(”%d”,x); daca y este o variabila reala, iar x o variabila intreaga. Stiind ca fiecare dintre variabilele var1, var2 memoreaza numele si nota unui student in forma data de declararea: struct student { char nume[30]; float nota; }var1,var2; Indicati care dintre urmatoarele expresii atribuie variabilei reale m media aritmetica a notelor celor doi studenti. Stiind ca fisierul “D.TXT” are urmatorul continut: 13 45 23 32 42 234 56 78 32 23 43 32 32 32 32 ce se va afisa in urma executarii programului urmator? #include <stdio.h rel="nofollow"> FILE *f; int x, y, z; void main(){ f = fopen(“D.TXT”,”r”); fscanf(f, “%d %d %d\n”, &x, &y, &z); fscanf(f, “%d”, &z);
20
b. a/100%100 d) {char a[]="1,000,000"; puts(a);}
d. 2, 3, 4
a. (x<=-a) || ((x=b)) || (x>d)
d. (x<=-a) && (x>b)
a. (x<=-10) || (x<50 && x>=-2) || (x>100)
d. 10
a. m=(var1.nota+var2.nota)/ 2;
d. 13 45 32
printf(“%d %d %d \n”, x, y, z); } Stiind ca fisierul “E.TXT” are urmatorul continut: 1234 67 34 23 567 546 677 1234 3234 4565 6564 12345 12445 12223 ce se va afisa in urma executarii programului urmator? #include <stdio.h> FILE *f, int x, y, z; void main(){ f = fopen(“E.TXT”, “r”); fscanf(f, “%d %d”,&x, &y); fscanf(f, “%d\n”,&z); printf(“%d %d %d \n”, x, y, z); } Stiind ca fisierul “F.TXT” are urmatorul continut: 12345 12 93 16 32 8.023 322 21 0.823 21 0.21 213.12 ce se va afisa in urma executarii programului urmator? #include <stdio.h> FILE *f, char x, y, z; void main(){ f = fopen(“F.TXT”, “r”); fscanf(f, “%c”, &x); fscanf(f,” %c”, &y); while(getc(f) != ‘\n’); fscanf(f, “%c”, &z); printf(“%c %c %c \n”, x,y,z); } Stiind ca fisierul “G.TXT” are urmatorul continut: IaEaws S,a.d sdll -dsa Xda dsa asd da sda sad ce se va afisa in urma executarii programului urmator? #include <stdio.h> FILE *f; char x, y, z; void main(){ f = fopen(“G.TXT”,”r”); while(getc(f) != ‘\n’); fscanf(f,”%c”, &x); while(getc(f) != ‘\n’); fscanf(f,”%c”, &y); while(getc(f) != ‘\n’); fscanf(f,”%c”, &z); printf(“%c %c %c \n”, x, y, z); } Stiind ca in urma executarii secventei x=strlen(s); for (i=0;i<x/2;i++) printf(“%c%c”,s[i],s[x-i-1]); s-a afisat succesiunea de caractere EXAMEN, care este sirul de caractere memorat de variabila s? Stiind ca initial variabilele intregi x, y si z au valorile x=1, y=2 respectiv z=3, in ce ordine trebuie scrise atribuirile urmatoare
21
a. 1 2 3
a. 1 2 3
a. I S -
a. EAENMX d. I III II
astfel incat, in final, expresia x+y+z sa aiba valoarea maxima? I) x=x+y-z; II) y=x-y+z; III) z=z-x+y; Stiind ca p este un vector (tablou unidimensional) cu 3 componente intregi (tabloul este declarat global), M este multimea tuturor cifrelor nenule, iar functia tipar afiseaza valorile elementelot p[0], p[1] si p[2], cu ce trebuie inlocuite simbolurile a, b si c in definitia functiei G astfel incat in urma apelului G(0) sa se afiseze toate elementele produsului cartezian MxMxM? void G(int k){ int i; for (i = a; i<=b; i++) { p[k] = i; if (k == c) tipar(); else G(k+1);} } Stiind ca variabila intreaga n memoreaza un numar natural cu cel putin 3 cifre, care dintre urmatoarele expresii C are ca valoare numarul obtinut dupa eliminarea ultimelor 2 cifre ale lui n? Stiind ca variabila intreaga nr memoreaza valoarea 5, stabiliti ce mesaj se va afisa in urma executarii secventei de instructiuni C urmatoare. if (nr<7) if (nr>3) printf(”Bine”); else printf(”Foarte bine”); else printf(”Rau”); Stiind ca variabilele x si y sunt de tip intreg, care este instrucţiunea prin care variabilei x i se atribuie ultima cifra a numarului natural memorat in variabila y? Stiind ca variabilele x si y sunt de tip intreg, care este instructiunea prin care variabilei x i se atribuie cifra zecilor numarului natural cu cel putin doua cifre memorat de variabila y? Toate variabilele din secventa de instructiuni C if (a>b) { aux=a;a=b; b=aux;} for(i=a;i<=b;i++) printf(“%d”,i); sunt intregi. Care dintre urmatoarele afirmatii este adevarata? Un sir de caractere se numeste palindrom daca sirul citit de la stanga la dreapta este identic cu sirul citit de la dreapta spre stanga. Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca sirul de caractere memorat în variabila s, avand exact 3 caractere, este palindrom? Variabila a memoreaza un numar natural care are exact 3 cifre. Care dintre expresiile C de mai jos are ca valoare numarul format din prima si ultima cifra a numarului memorat de a? Variabila a, de tip int, memoreaza un numar natural impar, iar variabila b, de tip int, memoreaza un numar natural par. Care dintre urmatoarele expresii C are valoarea 1? Variabila d, declarata prin struct dreptunghi { float a,b,p; }d; memoreaza in campurile a si b latimea si, respectiv, lungimea unui dreptunghi. Care dintre urmatoarele instructiuni atribuie campului p Variabila d, declarata prin struct dreptunghi { float a,b,aria; }d; memoreaza in campurile a si b latimea si, respectiv, lungimea unui dreptunghi. Care dintre urmatoarele instructiuni atribuie campului
22
a. a = 0, b = 10, c = 3
c. n/100
d. Bine
c. x=y%10; a. x=y/10%10; b. Secventa contine o instructiune alternativa urmata de o instructiune repetitiva.
c. s[0]==s[2]
c. a/100*10+a%10
b. !(!(a%2) || b%2);
c. d.p=2*d.a+2*d.b;
d. d.aria=d.a*d.b;
aria al variabilei d valoarea ariei dreptunghiului respectiv? Variabila intreaga a memoreaza un numar natural format din exact trei cifre, toate cifrele fiind nenule si distincte. Care dintre urmatoarele instructiuni C atribuie variabilei e suma cifrelor lui a? Variabila întreaga n memoreaza un numar natural cu exact 4 cifre. Care dintre expresiile C de mai jos este echivalenta cu expresia n/100%10%2==0 ? Variabila intreaga n memoreaza un numar natural de exact 5 cifre. Instructiunea care determina eliminarea din numarul n a primei si ultimei cifre este: Variabila intreaga n memoreaza un numar natural de exact 7 cifre. Instructiunea care determina eliminarea din numarul n a celor 3 cifre din mijlocul lui este: Variabila intreaga n memoreaza un numar natural format din exact doua cifre nenule. Care dintre urmatoarele instructiuni C determina memorarea in variabila intreaga t a numarului care are aceleasi cifre ca si n, dar in ordine inversa? Variabila intreaga n memoreaza un numar natural impar. Care dintre urmatoarele expresii C are valoarea 1? Variabila intreaga x memoreaza o valoare mai mare ca 1000, formata doar din cifre distincte. Care dintre urmatoarele instructiuni C afisează o singura cifra? Variabila intreaga x retine un numar natural cu cel putin doua cifre. Care dintre urmatoarele expresii C are valoarea egala cu cifra zecilornumarului natural memorat in variabila x? Variabila p este declarata astfel: int *p; Stiind ca p retine adresa unei variabile de tip int, care dintre urmatoarele instructiuni afiseaza valoarea respectivei variabile intregi? Variabila reala x memoreaza numarul 2.682. Care dintre urmatoarele instructiuni C va atribui variabilei intregi y valoarea 10? Variabila s este de tip sir de caractere, iar variabilele c1 si c2 sunt de tip char. Care expresie are valoarea 1 daca si numai daca sirul de caractere s contine caracterele memorate de variabilele c1 si c2? Variabila s memoreaza un sir de caractere. Care dintre urmatoarele expresii C este nenula daca si numai daca lungimea sirului este un numar par? Variabila s memoreaza un sir de caractere. Care dintre urmatoarele expresii C este nenula daca si numai daca lungimea sirului este strict mai mică decat 10? Variabila t este utilizata pentru a memora numarul de exemplare disponibile intr-o biblioteca si titlul unei carti. Numarul de exemplare este un numar natural de cel mult 2 cifre, iar titlul nu poate avea mai mult de 20 de litere. Care dintre urmatoarele declarari este corecta? Variabila t este utilizata pentru a memora pretul (val) si numele autorului unei carti. Pretul cartii este un numar natural de cel mult 3 cifre, iar numele autorului nu poate avea mai mult de 20 de litere. Care dintre urmatoarele declarari este corecta? Variabila t memoreaza o matrice cu 5 linii si 5 coloane, numerotate de la 0 la 4, cu elemente numere intregi, iar celelalte variabile sunt intregi. Secventa de program x=0; for(i=0;i<5;i++) for(j=i+1;j<5;j++) x=x+t[i][j]; determina memorarea in variabila x a sumei elementelor situate:
23
c. e=a*10/1000+a/10%10+a %10; b. n%1000%2==0 b. n=n/10%1000; a. n=n/100000*100+n%100; a. t=n%10*10+n/10; c. n%2!=0 d. printf("%d",x%10/1);
c. x / 10 % 10
b. printf(“%d”,*p); b. y = (floor)(x*100)/100 + (floor)(x*100%100/10); a. strstr(s,c1+c2)!=0
d. strlen(s)%2==0 a. strlen(s)<10 b. struct carte{ int nr; char titlu[21]; } t; c. struct carte{ int val;char nume[21];} t;
b. strict deasupra diagonalei principale
Variabila t memoreaza o matrice cu 8 linii si 8 coloane, numerotate de la 0 la 7, cu elemente numere intregi, iar celelalte variabile sunt intregi. Secventa de program z=0; for(i=0;i<8;i++) for(j=0;j<8-i;j++) z=z+t[i][j]; determina memorarea in variabila intreaga z a sumei tuturor elementelor situate: Variabila t memoreaza o matrice cu 8 linii si 8 coloane, numerotate de la 0 la 7, cu elemente numere intregi, iar variabilele i si j sunt intregi. Secventa de program z=0; for(i=0;i<8;i++) for(j=0;j
24
d. strict deasupra diagonalei secundare
a. strict sub diagonala principala
a. sub diagonala secundara, inclusiv diagonala secundara
d. (x<=b) && (x>a)
c. struct persoana{ char nume[21],prenume[21]; int sal;} x;
a. examen20*08
c. 1
d. b=(d<=c);
a. a = i;
a. !((a % c!=0) || !(b % c!=0)) b. (zb)
apartine intervalului inchis determinat de valorile variabilelor a si b ? Variabilele a, b, c si d memoreaza valori reale astfel incat a
a. (d
Variabilele intregi a si b memoreaza numere naturale. Care dintre expre
b. (a%2!=0) && (b%2!=0) && (a%2==1) && (b%2==1)
Variabilele intregi a si b memoreaza numere naturale. Care dintre expresiile C de mai jos este echivalenta cu expresia (a+b)%2==1 ? Variabilele intregi n si m memoreaza numere naturale nenule pare, iar n<m. Care dintre expresiile C de mai jos are valoarea egala cu numarul de valori impare din intervalul inchis [n,m] ? Variabilele intregi x si y memoreaza cate un numar natural nenul. Cel mai mic multiplu comun al valorilor lor este egal cu numarul memorat in y daca si numai daca urmatoarea expresie C are o valoare nenula: Variabilele intregi x si y memoreaza doua numere naturale cu cel mult 4 cifre fiecare. Care dintre expresiile de mai jos are valoarea 1, daca si numai daca valoarea memorata de x apartine intervalului [10,100] si valoarea memorata de y apartine intervalului [5,30]? Variabilele intregi x si y memoreaza numere naturale nenule. Care dintre urmatoarele expresii C este nenula daca si numai daca numarul obtinut prin insumarea valorilor variabilelor x si y are ultima cifra 0? Variabilele n, z si u sunt intregi, iar n memoreaza un numar natural cu cel putin 2 cifre. Secventa C care determina interschimbarea ultimelor doua cifre din scrierea numarului memorat de n este: Variabilele x si s memoreaza siruri cu cel mult 20 de caractere: x memoreaza sirul primavara, iar variabila s memoraza sirul anotimp. Ce se va memora in variabila s în urma executării instrucţiunii: strncat(s, x, 5); Variabilele x si y sunt de tip intreg, x memorand valoarea 4, iar y valoarea 2. Care dintre expresiile C de mai jos are valoarea 0? Variabilele x si y sunt de tip intreg, x memorand valoarea 8, iar y valoarea 6. Care dintre expresiile C de mai jos are valoarea 0? Variabilele x s i y sunt tip int. Care dintre expresiile C de mai jos are valoarea 1 daca si numai daca valorile intregi nenule memorate in variabilele x si y sunt egale? Variabilele x, y si z memoreaza valori reale, iar x
a. (a%2==0) && (b%2==1)|| (a%2==1) && (b%2==0)
25
b. m/2-n/2
d. x%y==0
c. (x<=100 && x rel="nofollow">=10)|| (y>=5 && y<=30)
d. (x%10+y%10)%10==0
b. u=n%10; z=n/100%10; n=n/100+u*10+z;
a. anotimpprima
d. !(x==2*y) c. !(x/2+2==y) c. (x<=y) || (y<=x)
a. (z>=x) && (z<=y)
b. 28 c. (z<=w) && (x>0) || (y>=x)