Pagina informaticii

Teste de informatică pentru liceu, articole C#, C/C++, PHP

Test grila - Pointeri şi tablouri

Alegeţi varianta unică de răspuns corectă:

1. Fie declaraţiile: int a[10],*p;   Care din următoarele expresii nu este echivalentă cu celelalte trei:
a) p=&a[0];  b) p=&a;  c) p=*a;   d) p=a; 

2. Ce afişează secvenţa următoare:
int a[100],*p,*q;
p=a+4; q=a+40;
cout<<(q – p);
a) 70  b) 36  c) 35  d) 72  e) secvenţa conţine erori

3. Ce afişează secvenţa:
int a[10],*p,*q=a+10;
for ( p=a; p<q; p++)  *p=(q – p);
cout<<a[1];
a) 9  b) 1  c) 10  d) 0  e) secvenţa conţine erori

4. Pentru declaraţia:  int *p;   care din următoarele instrucţiuni afişează corect conţinutul de la adresa indicată de p:
a) cin>>*p;   b) cin>>&p;  c) cout<<*p;  d) cout<<&(*p) ;

5. Ce valori afişează secvenţa:
int a=3,*adr=&a;
++ (*adr);
cout<<*adr<< “ ”<<a;
a) 3  3     b) 4  4     c) 3  4     d) 4  3     e) secvenţa conţine erori

6. Ce afişează secvenţa:
int a[10],*p, i;
*p=a;
for (i=0;i<10;i++) { *p=i;  p++; }
cout<<*(a+3);
a) 3   b) 4  c) 5  d) 55  e) secvenţa conţine erori

7. Fie declaraţiile de variabile:
int a[10], i=1, *p, **q;
Care din următoarele atribuiri este eronată:
a) *q=p;
b) q=&p;
c) i=*(a + i);
d) *q=*a;

8. Ce afişează secvenţa următoare:
int a=10,b=20,&x=a,&y=b;
x=30;
x ++;
y ++;
cout<<a<<“  ”<<b;

a) 31  21  b) 30 20  c) 31  20  d) 30 21  e) secvenţa conţine erori

Notă: Se acordă 2 puncte din oficiu. Fiecare item se punctează cu 1 punct.

Pointeri şi tablouri – Rezolvarea testului


1.  c
2.  b
3.  a
4.  c
5.  b
6.  e
7.  d
8.  a

Despre autor
Author

Dan Pracsiu deţinător www.dponline.ro
Profesor, Liceul Teoretic "Emil Racoviță" Vaslui
Membru în Comisia Naţională a Olimpiadelor de Informatică
Pasiuni: istoria, călătoriile, fotografia, muzica clasică

Scrie un comentariu
Nume:

Comentariu:

15 + 10 =