kelso roacher


Data inscrierii: 19/Feb/2009 Mesaje: 20 Localitate: Bolintin Vale
|
Trimis: 07/03/2009 07:53 Titlul subiectului: Programare procedurala |
|
|
Universitatea Spiru Haret
Facultatea de Matematica-Informatica
Programare Procedurala
Probleme propuse
1. 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());
for (k = 0; k < 3; k++) printf("G %d\n", g());
}
Analizati modul de functionare si precizati care este iesirea
acestui program. a)
F 1
F 1
F 1
G 1
G 2
G 3
B)
F 0
F 0
F 0
G 0
G 1
G 2
c)
F 1
F 2
F 3
G 1
G 2
G 3
d)
F 0
F 1
F 2
G 0
G 1
G 2
2. 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];
}
}
}
}
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);
}
a)
40 18 42
14 13 20
52 34 62
b)
64 28 35
68 40 41
20 10 11
C)
0 2 2
6 5 4
4 2 6
d)
0 4 3
4 0 1
4 2 3
3. 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 normale nenule este %d\n", s);
}
Ce afiseaza programul:
a) 6
b) intotdeauna 55
c) 10
D) uneori si 55
4. 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:
a) 55
B) intotdeauna 11
c) uneori si 55
d) uneori si 11
5. 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 a) 55
b) uneori si 65 c) uneori si 55 D) 65
6. 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:
a) 1, 2, 3, 4, 5, b) 0, 1, 2, 3, 4, C) 2, 3, 4, 5, 0, d) 2, 3, 4, 5, 7.
7. 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?
a) Da B) Nu
c) La compilare apare eroare de sintaxa
d) In momentul executarii apare o eroare
8. 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;
printf("s= %d\n", s);
}
Care este valoarea variabilei s la incheierea executarii programului:
a) 6 B) 0 c) 5
d) La compilare apare eroare de sintaxa
9. 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:
a) 0.33333
b) 0
C) 0.00000
d) 0.6
10. Se considera fisierul MAIN.CPP al carui continut este:
#include <stdio.h> 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:
a) Se afiseaza: Programare procedurala
b) La compilare apare eroare de sintaxa
C) La executare executarea programului se incheie cu un mesaj de eroare
d) Programul afiseaza adresa celului, din memoria volatila, ce contine sirul "Programare procedurala\n".
11. 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?
a) 5 b) 10 c) 7 D) 8
12. 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:
A) -5 b) 7 c) 10 d) 8
13. 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?
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 = 2, Da
k = 3, Da k = 5, Da k = 7, Da
c)
k = 2, Da k = 2, Nu k = 3, Da k = 3, Nu k = 4, Nu k = 5, Da k = 5, Nu k = 6, Nu k = 7, Da k = 7, Nu k = 8, Nu k = 9, Nu
k = 10, Nu d)
k = 3, Da k = 4, Nu k = 5, Da k = 6, Nu k = 7, Da k = 8, Nu k = 9, Nu
k = 10, Nu
14. 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:
a) Numerele de la 1 la 10 impreuna cu patratele acestora, in baza 10
B) k = 11, sqr(k) = 121
c) Numerele de la 1 la 10 impreuna cu patratele acestora, in baza 8
d) Numerele de la 1 la 10 impreuna cu patratele acestora, in baza 16
15. Se considera textul C:
#include <stdio.h>
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:
A) Programul afiseaza valoarea 1
b) La compilare apare o eroare de sintaxa
c) Programul afiseaza valoarea 0
d) Programul afiseaza valoarea 5
16. 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?
a) n1/n2 = 0 B) n1/n2 = 8 c) n1/n2 = 16
d) n1/n2 = 0.5
17. Se considera programul C:
#include <stdio.h>
#define MAX 10;
void main(void){
int k;
for (k=MAX k>0; --k) printf("Succes!\n");
} Atunci:
a) La compilare apare eroare de sintaxa in instructiunea for B) Afiseaza pe 10 rinduri secventa Succes!
c) Afiseaza pe 10 rinduri secventa Succes!\n
d) La compilare apare eroare de sintaxa la directiva #define
18. 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:
A) Mesajul redat prin "Cel putin un numar este zero\n"
b) Mesajul redat prin "Ambele numere sint nenule\n"
c) La compilare se obtine eroare de sintaxa d) La executare se obtine eroare de calcul
19. 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:
a) 2
b) 6
c) 8
D) O valoare din memoria volatila din afara spatiului alocat
20. 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:
a) {unsigned long int k = 1,000,000; printf("%ul", k);}
b) {char a[9]={'1', ',', '0', '0', '0', ',', '0', '0', '0'};
puts(a);}
c) {char *a = {'1', ',', '0', '0', '0', ',', '0', '0', '0', '\0'};
puts(a);}
d) {char a[]="1,000,000"; puts(a);}
21. 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");
}
a) La compilare apare o eroare de sintaxa in legatura cu prezenta ;
inaintea cuvintului else
B) Afiseaza "Da!" pentru ca 3 treimi formeaza un intreg c) Afiseaza "Nu!"
d) In timpul executarii apare eroare de calcul in virgula mobila.
22. Se considera programul C:
#include <stdio.h>
#include <conio.h>
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:
a) -*-*-*-**-*-****
B) ---------------- (16 simboluri)
c) La compilare apare eroare de sintaxa
d) Executarea programului se incheie fortat.
23. Care dintre urmatoarele programe afiseaza diferenta perechilor de elemente din indiferent ce tablou initializabil tab cu maximum 12 componente?
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]);
}
B)
#include <stdio.h>
#define MAX 12
static int tab[12]={1, 2, 4, 3, 0, 6, 9, 7, 10, 8, 12, 11};
static int dif[6]; void main(void){ int i=0, id=0;
while (i < MAX) dif[id++] = tab[i++]-tab[i++];
for(id = 0; id<6; id++) printf("dif[ %d ] = %d\n", id, dif[id]);
}
c)
#include <stdio.h>
static int tab[12]={1, 2, 4, 3, 5, 6, 9, 7, 10, 8, -1, -1};
static int dif[6];
void main(void){
int i=0, id=0;
while (tab[i] != EOF) dif[id++] = tab[i++]-tab[i++];
for(id = 0; id<6; id++) printf("dif[ %d ] = %d\n", id, dif[id]);
}
d)
#include <stdio.h>
#define MAX 12
static int tab[MAX]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11};
static int dif[MAX/2];
void main(void){
int n = sizeof(tab)/sizeof(int);
int i=0, id=0;
while (i < n) dif[id++] = tab[i++]-tab[i++];
for(id = 0; id<6; id++) printf("dif[ %d ] = %d\n", id, dif[id]);
}
24. 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)?
a) Mesajul "Da!"
B) Mesajul "Nu"
c) Eroare de compilare la a > b > c
d) Eroare de comparare in timpul executarii
25. Variabila x este de tip double. Care dintre urmatoarele expresii
C are valoarea 1 daca si numai daca numarul real memorat in
variabila x apartine intervalului (a,b], unde a si b sunt numere in
virgula mobila date (initializate, citite sau rezultat al unor operatii preliminare)?
a. (x<b) && (x>=a)
b. (x<=b) || (x>a) c. (x>b) || (x<=a) D. (x<=b) && (x>a)
26. Variabilele x si 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?
A. (x%y==0) && (y%x==0) && (x*y>0)
b. (x<=y) && (y<x)
c. (x<=y) || (y<=x)
d. x*x==y*y
27. Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca numarul real
memorat in variabila x se afla in intervalul (-a, a)?
a. x*x-a*a<=0
B. a*a-x*x>0
c. (a<x)&&(x<-a)
d. (x-a)*(x+a)>0
28. Fie expresia C 10*2/3*3/2. Care este rezultatul evaluarii expresiei?
a. 0
b. 10
c. 1.11
D. 9
29. 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?
A. (x+y-abs(x-y))/2
b. x+y-abs(x-y)/2
c. (x+y+abs(x-y))/2
d. (x+y+abs(x+y))/2
30. 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?
a. x*y-5!=0
b. x*(y-5)!=0
c. x*(y-5)>=0
D. !(x*(y-5)<=0)
31. Care dintre urmatoarele expresii C, are ca valoare cel mai mare dintre numerele naturale nenule memorate in variabilele intregi a si
b?
A. (a+b+abs(a-b))/2
b. a+b+abs(a-b)/2
c. (a+b-abs(a-b))/2
d. (a+b-abs(a+b))/2
32. Fie expresia C: ((a>3) && (a<15)) || (a!=b) Care dintre expresiile C de mai jos ii este echivalentă?
a. ((a>3) || (a<15)) && (a==b)
B. !((a<=3) || (a>=15)) || (a!=b)
c. ((a>3) || (a<15)) && (a!=b)
d. !(a<3 || a>15) && (a!=b)
33. Care este valoarea expresiei C: 9/2*2-5
A. 3
b. 4
c. -3
d. -3.75
34. 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?
a. 3*x-4*y==0
b. (x+y)/2 > x%y+1
C. !(x/2+2==y)
d. x-y+3!=0
35. Care dintre urmatoarele expresii C are valoarea 1 daca si numai daca variabilele x si y memoreaza doua numere naturale pare consecutive?
a. (x-y==2) && (y-x==2)
b. (x==2) && (y==4)
c. x-y==2
D. ((x-y==2) || (y-x==2)) && (x%2==0)
36. Care dintre expresiile C de mai jos este echivalenta cu expresia !((a<5)&&(b>7)) ?
a. (a>=5)&&(b<=7)
B. !(a<5) || !(b>7)
c. !(a<5) && !(b>7)
d. !(a>=5) && !(b<=7)
37. Pentru care dintre perechile de valori de mai jos expresia C: (a%100==b%100) && (a>99) || (b>99)
are valoarea 1? A. a=1003 şi b=3 b. a=35 şi b=35 c. a=1100 şi b=10 d. a=1234 şi b=12
38. 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?
a. x-y!=0
b. x+y>x%y+1 c. x-2*y==0 D. !(x==2*y)
39. 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?
A. x=(x/10*10+7)*10+x%10;
b. x=x/10+7+x%10;
c. x=(x%10*10+7)*10+x/10;
d. x=(x/10+7)*10+x%10;
40. 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?
a. 300 B. 5000 c. 120 d. 0
41. Care dintre urmatoarele instructiuni C determina eliminarea
cifrei din mijloc a unui numar natural, cu exact 5 cifre, memorat in variabila x?
A. x=x/1000*100+x%100; b. x=x%1000*100+x/100; c. x=x/100*100+x%100; d. x=x/1000+x%100;
42. 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?
a. 4 B. 6 c. 2 d. 8
43. 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?
a. 5
b. 5.833333
C. 5.83
d. 583
44. 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?
a. v1>v2
b. v1<v2
C. v1==v2
d. v1+v2==9
45. 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?
a. 0 B. 1 c. 2
d. true
46. Variabilele a, b, c si d memoreaza valori reale astfel incat a<b
si c<d. Care dintre expresiile C de mai jos are valoarea 1 daca si
numai daca intersectia intervalelor inchise [a,b] si [c,d] este vida?
A. (d<a) || (b<c)
b. !(c<a) && !(b<d)
c. (d>a) || (b>c)
d. (a>=c) && (b<=d)
47. Care din urmatoarele afirmatii despre operatorii din C este falsa?
a. > este operator relaţional
b. % este operator aritmetic c. && este operator logic
D. <= este operator logic
48. 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
o singură cifra?
a. 0
b. 1.14
C. -6
d. 1
49. In expresia C: x%2+(x+1)%2 variabila x este de tip intreg. Aceasta expresie:
A. are valoarea 1 pentru absolut orice numar natural x.
b. are valoarea 1 daca si numai daca x este un numar par.
c. are valoarea 1 daca si numai daca x este un numar impar.
d. are o valoare strict mai mare decat 1 pentru orice numar natural x.
50. Cate valori distincte, numere naturale, poate primi variabila x pentru ca valoarea expresiei x/2/2 scrisa in C sa fie egala cu 1?
a. 1 B. 4 c. 2
d. 0
51. 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?
A. x%10+x/10%10==0
b. x/100==0
c. x%10+x/10==0
d. x%10+x%10/10==0
52. 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?
a. x/100==0
b. x/100==0 && x%10==0
c. x/10!=0
D. x/100==0 && x/10!=0
53. Se considera variabila a care memoreaza un numar cu exact 6 cifre. Care dintre expresiile C de mai jos are ca valoare numarul compus din cele doua cifre din mijloc ale valorii memorate in a?
a. (a%100)/100
B. a/100%100
c. a/1000+a%1000
d. a/100%10+a/1000%10
54. 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.
a. (x<=-a) || ((x<c)|| (x>=-b)) || (x>d)
b. (x<=-a) || ((x<=c) && (x>=-b)) || (x>=d)
c. (x<-a) || ((x<c-1) && (x>-b)) || (x>d)
D. (x<=-a) || ((x<c) && (x>=-b)) || (x>d)
55. Variabila a memoreaza un numar natural care are precis 3 cifre. Care dintre expresiile C de mai jos are ca valoare numarul format
din prima si ultima cifra a numarului memorat de a?
a. a/10+a%100
b. a/100+a%10
C. a/100*10+a%10
d. a-a/10%10
56. In secventa alaturata de program:
for (i=1;i<=3;i++)
for (j=10;j>=i+1;j--)
printf(”%d”,j);
instructiunea de afisare se va executa de un numar de ori egal cu:
A. 24 b. 21 c. 3 d. 30
58. 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 favorabile astfel incit b < a.
a. (x<-a) || (x>-b)
b. (x<=-a) || (x>=-b)
C. (x<=-a) || (x>-b)
d. (x<=-a) && (x>b)
59. 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 (*)?
a. 0 B. 2 c. 1 d. 4
60. 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?
a. 0 b. 4 C. 6 d. 5
61. Care dintre expresiile urmatoare, scrise in limbajul C, are valoarea 1 daca si numai daca valorile variabilelor intregi x si y sunt numere pare?
a. x-y==0
b. (x+y)%2==0
c. (x%2==0) || (y%2==0)
D. (x%2==0) && (y%2==0)
62. Fie secventa de instructiuni C:
x=4; y=6;
while (y==6) y=y+1;
if (x==y) x=x+1;
Care este numărul exhaustiv de atribuiri efectuate la executarea
secvenţei de instrucţiuni?
a. 4 B. 3 c. 2 d. 5
63. Care este valoarea expresiei C: 50-(100–300/2/(2+3))?
a. -30 b. 70 C. -20 d. 60
64. 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?
a. y=x/10; b. y=x%10; C. x=y%10; d. x=x/10;
65. 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?
A. x=y/10%10; b. x=y%10/10; c. x=y%10;
d. x=x/100;
66. Care este instructiunea prin care variabilei x i se atribuie valoarea sumei cifrelor numarului natural format din fidel trei cifre, memorat de variabila y?
A. x=y/100+y/10%10+y%10;
b. x=y+y/10+y/100;
c. x=y%10+y%10/10+y/100;
d. x=y%10+y%100+y%1000;
67. Care este instructiunea prin care variabilei x i se atribuie valoarea cifrei sutelor numarului natural cu cel putin 4 cifre memorat in variabila y?
A. x=y/100%10; b. x=y/10/10; c. x=y%100;
d. x=y%10/10;
68. Care este instructiunea prin care variabilei x i se atribuie numarul obtinut prin inversarea ordinii cifrelor numarului natural format din riguros 2 cifre, memorat in variabila y?
A. x=y%10*10+y/10;
b. x=y/10*10+y%10; c. x=y%10+y/10*10; d. x=y%10+y/10;
69. Variabila intreaga n memoreaza un numar natural impar. Care dintre urmatoarele expresii C are valoarea 1?
A. !(n%2)
b. n%2==0
c. n%2!=0
d. !((n+1)%2==0)
70. 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).
a. niciuna
b. doar c
c. doar a si c D. doar a si b
71. Variabilele a, b si c, de tip int, pot fi initializate cu
oricare numere naturale impare distincte. Stiind ca c este divizor
al lui a, iar b nu este multiplu al lui c, care dintre urmatoarele expresii scrise in C are valoare 1?
A. !((a % c!=0) || !(b % c!=0))
b. (a % c!=0) && !(b % c!=0) c. (a % c!=0) || !(b % c!=0) d. !(c % a!=0) && (c % b!=0)
72. 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?
a. a%2 && b%2;
B. !(!(a%2) || b%2);
c. (a+b+1)%2;
d. !(a%2) || b%2;
73. Variabilele a si b sunt de tip int, iar variabilele c si d sunt
de tip double. Care dintre urmatoarele instructiuni de atribuire nu este corecta din punct de vedere sintactic?
a. c=d+2*c;
B. c=2-d%2*a;
c. c=sqrt(b*b);
d. b=(d<=c);
74. 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?
A. n % i si i c. n%(i-1)=0 si i
b. n% (i-1) si i-1 d. n%i si i-1
75. Se considera algoritmul:
1. citeste n; a = 0; b = 1; k = 2;
2. Cat timp k<n executa { scrie a, b; a = a+b; b = a+b; k = k+2;}
3. Daca k = n atunci scrie a, b; altfel scrie a. Ce sir va calcula algoritmul pentru n = 7?
a. 0, 1, 1, 1, 2, 2, 3 C. 0, 1, 1, 2, 3, 5, 8
b. 0, 1, 1, 2, 3, 3, 6 d. 0, 1, 0, 1, 0, 1, 0
76. Se considera definitia
void f(int n){
int j;
if (n>0) for (j=1; j<=n; j++) {printf(“%d”,j); f(n-1);}
}
Ce se afiseaza ca urmare a apelului f(2)?
a. 1122 c. 121
b. 112 D. 1121
77. 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?
a. printf(“%p”,p); c. printf(“%d”, p*);
B. printf(“%d”,*p); d. printf(“%d”, &p);
78. Se considera un tablul unidimensional in care elementele sunt
in ordinea: 1, 3, 5, 7, 10, 16, 21.Pentru a afla pozitia pe care se afla valoarea x = 10 se aplica metoda cautarii binre. Care este succesiunea de elemennte care astepau valoarea lui x:.
a. 21,16, 10 c. 1, 3, 5, 7, 10
B. 7, 16, 10 d. 5, 7, 10
79. Variabilele a si i sunt declarate astfel:
int a[100], i;
Care dintre urmatoarele instructiuni este corecta din punct de
vedere sintactic?
A. a = i;
c. i[1]
=
a;
b. i = a; d. i[a] = 1;
80. 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);}
10, c = 3 c. a = 1, b = 9, c = 3
3, c = 9 D. a = 1, b = 9, c = 2
81. Se considera urmatoarea functie recursiva apelata numai pentru
numere naturale nenule:
int f(int a, int b){
if (a<b) return a; else return f(a-b, b);
}
Care dintre urmatoarele functii este echivalenta cu functia data?
a. int f(int a, int b){return a*b;}
b. int f(int a, int b){return a-b+1;}
C. int f(int a, int b){return a%b;}
d. int f(int a, int b){return a/b;}
82. 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<n) {v[i] = i*i; i++;}
}
De cate ori se repeta instructiunea i++; in timpul executarii
secventei date?
a. n+1 ori c. 0 ori
B. n ori d. n-1 ori
83. Se considera urmatoarele declaratii:
int x[5] = {0, 1, 5, 3, 4};
int y, i;
si secventa de instructiuni:
{
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?
a. 0 c. 13
B. 5 d. valoare nedeterminata
84. Daca n este un numar natural (intreg pozitiv), ce realizeaza urmatoarea secventa?
{p=1;
while(n) p *= (n--);
n*p C. Calculeaza in variabila p
valoarea lui n!
np d. Calculeaza in variabila p valoarea lui pn.
85. Care dintre urmatoarele variante realizeaza deschiderea la citire a fisierului text “A.TXT”
a. f = fopen(“A.TXT”, “w”);
b. f = fopen(“r”, “A. TXT”); C. f = fopen(“A.TXT”, “r”); d. f = fopen(”A.TXT”, r);
86. 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; i<n-1;i++)
for(j = i+1; j<n; j++)
if(a[i][3] >a[j][3]) f(a, n, m, i, j);
de un numar de ori egal cu:
a. m c. n
b. 1 D. cel mult n(n-1)/2
87. Consideram urmatoarea declaratie:
struct produs {char denumire[10]; int pret;} p;
Cum se poate accesa întâia litera a denumirii unui produs ale carui caracteristici sunt memorate in variabila p?
a. p.denumire[1] C. p.denumire[0]
b. p->denumire d. p->denumire[1]
88. Care dintre urmatoarele variante realizeaza deschiderea la scriere a fisierului text “B.TXT”?
a. f = fopen(“B.TXT”,”r”); B. f = fopen(“B.TXT”,”w”); c. f = fopen(“w”, “B.TXT”); d. f = fopen(“B.TXT”, w);
89. 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> 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);
printf(“%d %d %d \n”, x, y, z);
}
a. 13 45 23 c. 13 32 23
b. 13 32 56 D. 13 45 32
90. Stiind ca fisierul “E.TXT” are urmatorul continut:
1 2 3 4
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);
67 567
3 4
RAASPUNSUL E A
91. Care dintre urmatoarele secvente au ca efect citirea unui caracter din fisierul “C.TXT”?
a. f = fopen(“C.TXT”, “r”); fclose(f);
b. f = fopen(“C.TXT”, “r”); scanf(“%c”, &x); fclose(f);
C. f = fopen(“C.TXT”, “r”); fscanf(f, “%c”, &x); fclose(f);
d. f = fopen(“C.TXT”, “r”); fscanf( “%c”, &x, f); fclose(f);
92. Considerand ca variabila f este de tip fisier (FILE *), care dintre urmatoarele instructiuni verifica daca s-a ajuns la sfarsitul fisierului indicat de f?
a. if (eof(f)) printf(“final”); else printf(“mai este”);
b. if (feof(f)) printf(“final”); else printf(“mai este”); c. if (!eof(f)) printf(“final”); else printf(“mai este”); B. if(!feof(f)) printf(“final”); else printf(“mai este”);
93. 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);
}
a. 1 2 3 c. 1 9 8
B. 1 2 9 d. 1 9 3
94. 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);
}
a. Ieri
13 Azi 14
Maine
15
b. Ieri 13
Azi 14 Maine 15
c. Ieri 13
Azi 14
Maine 15
D. Ieri
13 Azi 14 Maine
15
95. 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);
}
a. I S - C. S - X
b. a S - d. I E S
96. 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).
a. 1 c. -4
b. -3 D. 4
97. 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?
a. 12 60 5 7 C. 60 12 60 7
b. 60 12 5 7 d. 60 12 60 12
98. 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).
A. 3 c. 2
b. 1 d. 4
99. 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)?
a. 50 c. 40
B. 45 d. 55
100. 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];
a. Suma elementelor situate strict deasupra diagonalei principale
b. Suma elementelor situate strict deasupra diagonalei secundare
C. Suma elementelor situate deasupra diagonalei principale, inclusiv diagonala principala
d. Suma elementelor situate strict sub diagonala principala
101. Se considera secventa:
{int i, j;
for (i = 1; i<n; i++) for(j = i; j < n; j++) if (j%i == 0)
printf(“%d%d”, i, j);
}
De cate ori se va executa instructiunea de decizie (marcata ingrosat:
j%i == 0) din secventa de program de mai sus daca valoarea initiala
a variabilei intregi n este 8?
a. 16 c. 38
b. 36 D. 28
102. 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?
A. aabbdeeff c. aabbddeff
b. nici una dintre variantele propuse
d. egalitate
103. In functia recursiva de mai jos se considera ca tabloul
unidimensional v este declarat global. void star(int i){
if(i<10) {
printf(“*”);
if (v[i] == i+1) star(i+2); else star(i+1);
}
}
Pentru care dintre declaratiile urmatoare, apelul star(0) realizează 7
asteriscuri (stelute)?
A. int v[] = {1, 4, 3, 2,
1,
6,
5,
4,
3,
10};
b. int v[] = {3, 2, 1, 4, 3, 6, 7, 2, 9, 2};
c. int v[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
d. int v[] = {10, 9, 8, 7, 6, 5, 4, 3, 2, 1};
104. Variabila d, declarata prin struct dreptunghi
{
float a,b,p;
}d;
memoreaza in campurile a si b latimea si, respectiv, mărimea unui dreptunghi. Care dintre urmatoarele instructiuni atribuie campului p
al variabilei d valoarea perimetrului dreptunghiului respectiv?
a. p.d=2*(d.a+d.b); b. p.d=2*a.d+2*b.d; c. d.p=2*d.a+2*d.b; d. d.p==2*d.a+2*d.b;
105. 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 aria al variabilei d valoarea ariei dreptunghiului respectiv?
a. d.aria==d.a*d.b;
b. aria.d=a.d*b.d; c. aria.d=d.a*d.b; d. d.aria=d.a*d.b;
106. In declararea struct p{
int a,b;} x,y;
int t;
campul a al structurii memoreaza numaratorul, iar campul b memoreaza numitorul unei fractii. Care dintre urmatoarele secvente de instructiuni determina, in urma executarii, interschimbarea numitorului fractiei x cu numitorul fractiei y?
a. t=x.b; x.b=y.b; y.b=t;
b. t=b.x; b.x=b.y; b.y=t;
c. x.b=y.b;
d. b.x=b.y;
107. 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]<a[n-1][i])
p=i;
a. cel mai mare element de pe linia n-1
b. cel mai mic element de pe linia n-1
c. cel mai mare element de pe coloana n-1
d. cel mai mic element de pe coloana n-1
108. 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?
a. scanf(”%d”, &x);
b. scanf(”%d %d”, &a.x,&b.x);
c. scanf(”%d %d”, &x.a,&x.b);
d. scanf(”%d %d”, &a->x,&b->x);
109. 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?
a. printf(”%d %d”, x.a,x.b); b. printf(”%d %d”, a.x,b.x); c. printf(”%d”, x);
d. printf(”%d %d”, a->x,b->x);
110. Pentru a memora simultan numele şi media la ‚Programare Procedurala’ a unui student in variabila e, se poate utiliza declararea:
a. struct e{
string nume; float media;}
b. char e.nume[40];
float e.media;
c. float e;
d. struct {char a[40]; float b;} e;
111. 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?
a. struct {float media;
int varsta;} x;
b. struct x {float media;
int varsta;};
c. float x.media;
int x.varsta;
d. struct absolvent {float x.media;
int x.varsta};
112. 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?
a. struct x { int cod;
float media;};
b. struct { int cod;
float media;} x; c. int x.cod ; float x.media;
d. struct candidat { int x.cod;
float x.media;};
113. 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?
a. struct punct {float ox,oy;} x;
b. char x[2];
c. struct x {float ox,oy;};
d. float x;
114. Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan partea reala si bucată imaginara a unui numar complex?
a. struct x {float im,re;};
b. char x[2];
c. struct complex{ float im, re;} x; d. float x;
115. Care dintre urmatoarele variante reprezinta o declarare corecta pentru o variabila x care memoreaza simultan numaratorul si
numitorul unei fractii ireductibile:
a. struct fractie{int n1,n2;} x;
b. char x[2];
c. struct x{int n1,n2;};
d. float x;
116. În secvenţa: p=1; for(i=1;i<=4;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 finit celor 8 elemente aflate pe diagonalele matricei.
a. p=p*a[5-i][i]*a[i][5-i];
b. p=p*a[i][i]*a[i][4-i];
c. p=p*a[i][i]*a[5-i][5-i];
d. p=p*a[5-i][5-i]*a[i][5-i];
117. Pentru declararea struct student
{char nume[20];
int nota;} e1,e2;
precizati care dintre instructiunile de atribuire este gresita:
a. e1=e2+1;
b. e1.nume[2]=’x’;
c. e1=e2;
d. e1.nota=e2.nota+1;
118. Care din urmatoarele expresii are valoarea 1 daca si numai daca sirul de caractere s, de lungime 10, este obtinut prin concatenarea
a doua siruri identice?
a. strcmp(s,s+5)==0
b. s==strstr(s,s+5)
c. s==s+5
d. strcmp(s,strcat(s,s+5))==0
119. Functia predefinita care returneaza modulul unui numar intreg este:
a. sgn b. fabs c. mod d. abs
120. Care este valoarea expresiei strlen(s) pentru variabila s de tip sir de caractere, declarata si initializata astfel: char s[15]=”Proba_1”;
a. 7
b. 15 c. 6 d. 5
121. Pentru declararea unei variabile care memoreaza un cuvant avand maximum 25 caractere, putem utiliza sintaxa:
a. char c;
b. char c[];
c. char c[26];
d. char[26] c;
122. 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?
a. EAENMX b. ENXAME c. NEEXMA d. NEMAXE
123. 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?
a. printf(“%c“,x);
b. printf(“%c“,x.nume[0]);
c. printf(“%c“,x.nume);
d. printf(“%c“,nume);
124. Consideram ca variabila s memoreaza sirul de caractere examen. Care va fi valoarea lui s dupa executarea instructiunilor?
s[0]= ‘E’;s[strlen(s)-1]= ‘N’;s[strlen(s)/2-1]= ‘A’;s[strlen(s)/2]=
‘M’.
a. EXAMEN
b. exAMen c. ExAMeN d. ExameN
125. 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′;
a. MAma b. MamA c. MaAa d. MAMA
126. 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<n, atunci executarea secventei determina:
a. eliminarea liniei k din matrice
b. adaugarea liniei k in matrice
c. eliminarea coloanei k din matrice d. adaugarea coloanei k in matrice
127. In secventa
if(!(strcmp(s1,s2) || strcmp(s1,s3)))
val=1;
else val=2;
variabilele s1, s2 si s3 retin siruri de caractere. Dupa executarea
acesteia, variabila intreaga val primeste valoarea 1 daca a. s1, s2, s3 retin siruri identice de caractere
b. s1, s2, s3 retin siruri de caractere ordonate lexicografic
c. s1, s2, s3 retin siruri de caractere de lungimi diferite
d. s1 este obtinut prin concatenarea sirurilor retinute in s2 si s3
128. Fiind dat un tablou bidimensional cu 20 linii şi 20 coloane, cate elemente se gasesc strict deasupra diagonalei adverse a tabloului?
a. 180 b. 200 c. 190 d. 210
129. Elementele tabloului bidimensional
1 2 3 4
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ă?
a. 16 b. 15 c. 25
d. 22
130. 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 in variabila p?
a. p.nume[0]
b. p.nume[1]
c. p.nume d. nume[1]
131. 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?
a. m=(x.nota1+x.nota2)/2;
b. m=(nota1+nota2)/2;
c. x.m=(x.nota1+x.nota2)/2;
d. m=(x,nota1+x,nota2)/2;
132. In secventa
for(i=0;i<=strlen(x)-1;i=i+3) printf(“%c”,x[i]);
variabila x memoreaza un sir cu cel mult 100 de caractere, iar variabila i este de tip intreg. Care este numarul maxim de caractere
pe care il poate avea sirul x astfel încat secventa alaturata sa afiseze exact 3 caractere ale acestuia?
a. 7
b. 3 c. 9 d. 8
133. Consideram declararea:
struct punct{
int x,y;
} p;
Care dintre urmatoarele instructiuni este corecta din punct de vedere sintactic?
a. p->y=p->y+1;
b. p=9;
c. p.x=7;
d. p=p+1;
134. Variabila x este utilizata pentru a memora numele, prenumele si salariul unei persoane. Numele si prenumele pot avea cel mult 20 de
litere fiecare, iar salariul este un numar natural nenul mai mic decat 30000 . Care dintre urmatoarele declarari este corecta?
a. float x[3][21]; b. int x[3][21];
c. struct persoana{
char nume[21],prenume[21];
int sal;} x;
d. struct persoana[
char nume[21],prenume[21];
int sal;] x;
135. 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?
a. struct carte{ int val;char nume;} t;
b. struct carte{int val,nume;} t;
c. struct carte{ int val;char nume[21];} t;
d. struct carte{ int val[21][21];char nume;} t;
136. 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?
a. struct carte {
float nr,titlu;
} t;
b. struct carte{
int nr;
char titlu[21];
} t;
c. struct carte{
char nr; int titlu;
} t;
d. struct carte{
long nr,titlu;
} t;
137. 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?
a. strlen(s)<10
b. strlen(s,10)<0
c. leng(s)<10
d. s-’0’<10
138. Variabila s memoreaza un sir de caractere. Care dintre urmatoarele expresii C este nenula daca si numai daca lungimea sirului este un numar par?
a. s-2==0
b. strlen(s,2)=0
c. leng(s)%2
d. strlen(s)%2==0
139. 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?
a. variabila varianta b. Variantavariabila c. varianta variabila
d. variabila variabila
140. Considerand declararile struct cerc
{float raza; int x,y;}; cerc c;
care dintre urmatoarele referiri este corecta din punct de vedere sintactic ?
a. cerc.x b. c.x
c. c.cerc.x
d. raza.x
141. 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<a[i][n-i+1])
diagonalele tabloului a
diagonala secundară a tabloului a
diagonala principală a tabloului a
d. cel mai mare număr din tabloul a
142. 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 ?
a. e.fig.tip b. e.a
c. e.punct.x d. e.a.x
143. 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];
a. Suma elementelor de pe diagonala principală a tabloului a
b. Suma elementelor de pe diagonala secundară a tabloului a
c. Suma elementelor tabloului a
d. Cel mai mare element de pe diagonala principală a tabloului a
144. Daca variabila s de tip sir de caractere memoreaza sirul
INFORMATICA atunci strlen(s) are valoarea?
a. 10
b. 12
c. TRUE
d. 11
145. Cum se poate accesa prima litera a denumirii unui conceput ale carui caracteristici sunt memorate in variabila p, declarata prin: struct produs{
char denumire[15];
int pret;}p;
a. produs.denumire[0]
b. denumire.p[0] c. p.denumire[0] d. P->denumire[0]
146. 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;
a. p.nume[0]
b. persoana.nume[0]
c. p->nume[0]
d. nume.p[0]
147. 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;
a. denumire.m[0]
b. m->denumire[0]
c. material.denumire[0]
d. m.denumire[0]
148. 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;
a. e->nume[0]
b. e.nume[0]
c. student.nume[0]
d. nume.e[0]
149. 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.
a. m=(var1.nota+var2.nota)/2;
b. m=var1.nota+var2.nota/2;
c. m=(var1+var2).nota/2;
d. m=nota(var1+var2)/2;
150. 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);
a. anotimpprima
b. anotimpprimavara c. primavara
d. prima
151. Se considera declararile:
struct A {
int x;
char y; float z;}; struct B { struct A x; long y;};
B x, y;.
Care este tipul expresiei x.x.y a. float
b. int
c. long d. char
152. 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?
a. imposibil b. examen
c. banal
d. examenimposibil
153. 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?
a. exAmeNe b. ExAmene c. EXAMENE d. examene
154. 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:
a. deasupra diagonalei principale, inclusiv diagonala principala
b. strict deasupra diagonalei principale c. strict sub diagonala principala
d. strict deasupra diagonalei secundare
155. 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<i;j++) z=z+t[i][j];
determina memorarea in variabila intreaga z a sumei tuturor elementelor situate:
a. strict sub diagonala principala
b. deasupra diagonalei principale, inclusiv diagonala principala c. strict deasupra diagonalei principale
d. strict deasupra diagonalei secundare
156. 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:
a. strict sub diagonala secundara
b. deasupra diagonalei principale, inclusiv diagonala principala c. deasupra diagonalei secundare, inclusiv diagonala secundara
d. strict deasupra diagonalei secundare
157. 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=7-i;j<8;j++)
z=z+t[i][j];
determina memorarea in variabila intreaga z a sumei tuturor elementelor situate:
a. sub diagonala secundara, inclusiv diagonala secundara
b. deasupra diagonalei principale, inclusiv diagonala principala c. strict sub diagonala principala
d. strict deasupra diagonalei secundare
158. 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:
a. strict deasupra diagonalei principale
b. deasupra diagonalei principale, inclusiv diagonala principala c. deasupra diagonalei secundare, inclusiv diagonala secundara
d. strict sub diagonala secundara
159. 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 întocmai 3
caractere, este palindrom?
a. s[0]==s[1] b. s[1]==s[2] c. s[0]==s[2] d. s[1]==s[3]
160. 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.)
a. amen b. exam c. menn d. men
161. 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';
a. form b. forma
c. InfoEXA
d. Infor
162. Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunii de mai jos? s=strstr(strnset("Olimpiada",'#',strlen("2009")),"ad");
a. Oli2009
b. ada
c. Olimp2009
d. ####2009
163. 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';
a. format
b. informat
c. inform
d. informLIC
164. Ce valoare are variabila s de tip sir de caractere dupa executarea instructiunii de mai jos? s=strcat(strncpy(s,"informatica",strlen("2008")),"LIC");
a. info
b. infoLIC
c. LICinfo
d. InformaticaLIC
165. 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?
a. strstr(s,c1+c2)!=0
b. strchr(s,c1)!=0 && strchr(s,c2)!=0
c. strchr(strchr(s,c1),c2)!=0
d. strchr(s,c1)*strchr(s,c2)!=0
166. In declararea struct punct
{
float x,y;
}P;
campurile x si y ale inregistrarii pot memora coordonatele carteziene ale unui punct din planul xOy. Care dintre urmatoarele
expresii are valoarea 1 daca si numai daca punctul P este situat pe
axa Ox ? a. P.x==0 b. P.y==0
c. P.x+P.y==0
d. P.x==P.y
167. In secventa for(i=0; i<8; i++) for(j=0; j<8; j++) a[i][j] = (i+j)%8;
i, j si n sunt variabile intregi, iar a este o matrice formata din 8
linii şi 8 coloane, numerotate de la 0 la 7. Care este suma
elementelor de pe ultima linie a matricei, in urma executării
acestei secvenţe?
a. 28 b. 84 c. 36 d. 21
168. In secventa for(i=0; i<n; i++) for(j=0; j<n; j++)
a[i][j] = (i+j)%n;
i, j si n sunt variabile intregi, iar a este o matrice patratica formata din n linii si n coloane numerotate de la 0 la n-1. Care
este suma elementelor de pe diagonala secundara din matricea a, in urma executarii acestei secvente, daca n=8?
a. 8
b. 64 c. 24 d. 56
169. In secventa for(i=0; i<n; i++) for(j=0; j<n; j++) a[i][j] = (i+j)%n;
i, j si n sunt variabile intregi, iar a este o matrice patratica
formata din n linii si n coloane, numerotate de la 0 la n-1. Care
este suma elementelor de pe diagonala principala din matricea a, in urma executarii acestei secvente, daca n=8?
a. 24 b. 64 c. 56 d. 8
170. 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?
a. En b. Een
c. Exam
d. Exn
171. Consideram variabila x care memoreaza sirul de caractere ABAC. Care dintre urmatoarele instructiuni conduc la afisarea caracterului
B?
a. printf("%c",x[strlen(x)-3]);
b. printf("%c",x[strlen(x)-1]);
c. printf("%c",x[2]);
d. printf("%c",x[strlen(x)]);
172. Fie x un număr natural cu exact 4 cifre. Care dintre urmatoarele instructiuni C/C++ determina, in urma executarii, eliminarea cifrei sutelor numarului memorat de variabila x?
a. x=x%10+x/10+x/1000; b. x=x%1000*100+x/100; c. x=x%1000+x%100+x%10; d. x=x/1000*100+x%100;
173. 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?
a. x%3
b. (1-x%3)+(2-x%3) c. (1-x%3)*(2-x%3) d. 3-x%3
174. Care dintre urmatoarele expresii C este echivalenta cu !((x>=5)&&(x<10)) ?
a. (x<5) || (x>=10)
b. (x<5) || (x>10)
c. (!(x>=5)) && (!(x>10))
d. (x>=5) || (x<10)
175. 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:
a. y%x
b. y%x==0
c. x%y
d. x%y==0
176. 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?
a. x%10+y%10==0
b. y%10==x%10
c. x+y%10==0
d. (x%10+y%10)%10==0
177. 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?
a. n%10/10
b. n%10
c. n/100
d. n/10%10
178. Fiecare dintre variabilele intregi x, y si t memoreaza cate un numar natural de cel mult 4 cifre. Stiind ca x<y, care dintre urmatoarele expresii C este egala cu 1 daca si numai daca numarul memorat de variabila t apartine intervalului inchis [x,y]?
a. (t<x) && (t>y)
b. (t>=x) && (t<=y) c. (t>=x) || (t<=y) d. (t<x) || (t>y)
179. Fiecare dintre variabilele intregi x, y si t memoreaza cate un numar natural de cel mult 4 cifre. Stiind ca x<y, care dintre urmatoarele expresii C este egala cu 1 daca si numai daca numarul memorat de variabila t nu apartine intervalului deschis (x,y)?
a. (t<=x) || (t>=y)
b. (t>x) || (t<y)
c. (t<=x) && (t>=y)
d. (t>x) && (t<y)
180. 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]?
a. (x<=100 && x>10) && (y>=5 || y<30)
b. (x<=100 && x>=10) && (y<5 && y<=30) c. (x<=100 && x>=10)|| (y>=5 && y<=30) d. !((x>100 || x<10) || (y<5 || y>30))
181. 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? a. Secventa contine o instructiune repetitiva inclusa intr-o instructiune alternativa.
b. Secventa contine o instructiune alternativa urmata de o instructiune repetitiva.
c. Secventa contine o instructiune alternativa, urmata de o
instructiune repetitiva, urmata de o instructiune de afisare. d. Secventa contine o instructiune alternativa inclusa intr-o instructiune repetitiva.
182. 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?
a.
i=5; j=6; while(j>4){ printf(”%d”,i); j--;
}
b.
i=5; j=6; while(j>4) printf(”%d”,j); j--;
c.
j=5; for(i=5;i<=5;i++) printf(”%d”,i);
d. j=5;
for(i=1;i<2;i++)
printf(”%d”,j);
183. 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?
a. e=a%10/10+a/100%10+a%10;
b. e=a/10+a/100+a/1000;
c. e=a*10/1000+a/10%10+a%10;
d. e=a*10/1000+a%100%10+a%10;
184. Variabilele a, b si z sunt reale, iar a ≤ b. Care dintre expresiile C urmatoare are valoarea 1 daca si numai daca valoarea variabilei z nu apartine intervalului inchis
determinat de valorile variabilelor a si b ?
a. (z>a||(z>b)
b. (z<a)||(z>b)
c. z<a && z>b
d. z>=a && z<=b
185. Variabilele x, y si z sunt intregi, x memoreaza valoarea 7, y memoreaza valoarea 20, iar z memoreaza valoarea 5. Care este rezultatul evaluarii expresiei aritmetice C: x+y+x*z/y ?
a. 28.75
b. 28
c. 29
d. 27
186. Variabilele x, y, z si w sunt intregi, x memoreaza valoarea 2,
y memoreaza valoarea 3, z memoreaza valoarea 5, iar w memoreaza valoarea 7. Care dintre urmatoarele expresii, scrise în limbajul C, are valoarea 1?
a. (y>z) || (x>3)
b. (x==z) && ((y==3)||(w==7)) c. (z<=w) && (x>0) || (y>=x) d. (y>=3) && (w<7)
187. Variabilele x, y si z memoreaza valori reale, iar x<y. Care dintre expresiile de mai jos, scrise in limbajul C, are valoarea 1 daca valoarea variabilei z este situata in intervalul inchis determinat de valorile memorate in variabilele x si y?
a. (z>=x) && (z<=y) b. (z<=x) && (z<=y) c. (y<x) || (z<=x) d. (z<x) || (z>y)
188. In secventa de instructiuni C:
x=20; y=5;
x=x+y; y=x-2*y; x=y+x;
variabilele x si y sunt intregi. Ce valoare va retine variabila x dupa executarea acesteia?
a. -10 b. 25 c. 15 d. 40
189. Care dintre expresiile C de mai jos, are valoarea 1 daca valoarea variabilei intregi x este un numar intreg par si strict pozitiv?
a. !((x%2!=0)||(x<=0))
b. (x%2!=0)||(x<0)
c. !((x%2==0)||(x>0))
d. ((x+1)%2==0)&&(x>=2)
190. Variabila intreaga x retine un numar natural cu cel putin doua cifre. Care dintre urmatoarele
expresii C are valoarea egala cu cifra zecilor numarului natural
memorat in variabila x?
a. x % 10 / 10
b. x – (x / 10) * 10
c. x / 10 % 10
d. x – (x / 10) % 10
191. Care dintre urmatoarele expresii C are valoarea 1 daca numarul natural memorat de variabila n este strict mai mare decat 100 si divizibil cu 12?
a. (n%4 == 1) || (n%3 == 1) b. (n%100/4 == 0) && !(n%3) c. (n%100%4 == 0) && n%3
d. (n%100%4 == 0) && (n%3 == 0)
192. Variabila reala x memoreaza numarul 2.682. Care dintre
urmatoarele instructiuni C va atribui variabilei intregi y valoarea
10?
a. y = (x*100)/100 + (x*1000%100/10);
b. y = (floor)(x*100)/100 + (floor)(x*100%100/10);
c. y = (floor)(x*100) – (floor)(x*10)*10+(floor)(x);
d. y = (floor)(x*1000)/100 + (floor)(x*100%100/10);
193. Care dintre urmatoarele expresii C are valoarea 1 daca variabila x memoreaza un numar natural patrat perfect?
a. sqrt(x) == floor(sqrt(x))
b. sqrt(x) != floor(sqrt(x))
c. floor(sqrt(x))!=ceil(sqrt(x))
d. x-floor(x)==ceil(x)
194. Care dintre urmatoarele instructiuni C sunt corecte sintactic daca x si y sunt doua variabile de tip intreg?
a.
if (x < 2) && (x > - 5)
{x=x+1; y=y-1;}
b.
if -5 < x < 2
{ x=x+1; y=y-1;}
c.
if x < 2 && x >-5
{ x=x+1; y=y-1;}
d.
if (x < 2 && x > -5)
{x=x+1; y=y-1;}
195. 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<z)?
a. !((z<x) || (z>y))
b. (z>x) && (z<y)
c. !((y>x) && (y<z))
d. (z<x) && (z>y)
196. Variabila intreaga n memoreaza un numar natural de exact 5 cifre. Instructiunea care determina eliminarea din numarul n a primei si ultimei cifre este:
a. n=n%100/10;
b. n=n/10%1000; c. n=n/10%10000; d. n=n%10/1000;
197. 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:
a. n=n/100000*100+n%100;
b. n=n%10000/100+n/100;
c. n=n/10%10000;
d. n=n/1000;
198. 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. a. 1012.34
b. 10.12
c. 0.12
d. 10
199. 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:
a. n=(n/100*10+n%10)*10+n%100/10;
b. u=n%10; z=n/100%10; n=n/100+u*10+z;
c. n=(n/100*10+n%10)*10+n/100%10;
d. u=n%10; z=n/100%10; n=n/100*100+z*10+u;
200. 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?
a. a<b b. a==b c. a>b
d. a+b==6
200. Variabilele intregi a si b memoreaza numere naturale. Care dintre expresiile C de mai jos este echivalenta cu expresia (a+b)%2==0 ?
a. (a%2==0) && (b%2==0)&& (a%2==1) && (b%2==1)
b. (a%2!=0) && (b%2!=0) && (a%2==1) && (b%2==1) c. (a%2==1) || (b%2==1) || (a%2==0) && (b%2==0) d. (a%2==0) && (b%2==0) || (a%2==1) && (b%2==1)
201. Variabilele intregi a si b memoreaza numere naturale. Care dintre expresiile C de mai jos este echivalenta cu expresia (a+b)%2==1 ?
a. (a%2==0) && (b%2==1)|| (a%2==1) && (b%2==0)
b. (a%2!=0) && (b%2!=0) && (a%2==1) && (b%2==1) c. (a%2==1) || (b%2==1) || (a%2==0) && (b%2==0) d. (a%2==0) && (b%2==0) && (a%2==1) && (b%2==1)
202. Variabila întreaga n memoreaza un numar natural cu exact 4 cifre. Care dintre expresiile |
|