1.Jaka (w C++) jest wartość wyrażenia 7/9*9 ?

a) 1

b) 0.08642

c) 0

d) 7

2. Które deklaracje funkcji main() są poprawne ?

a) int main()

b) int main(int argc, char* argv[])

c) obie są poprawne

d) obie są niepoprawne

3. Które polecenie jest poprawne w C++ ?

a) char* a = new char[20];

b) char a = new char[20];

c) char a = new char(20.0);

d) żadne z powyższych

4. Jaki jest wynik (w C++) wyrażenia 22%6 ?

a) 2

b) 3

c) 0

d) żaden z powyższych

5. Co wypisze polecenie std::cout<<(0==0) ?

a) 0

b) 1

c) 2

d) Compiler error: Lvalue required

6. Jaki jest poprawny składnia oznaczająca w C++ dziedziczenie a) class klasadziedziczaca : public klasabazowa b) class klasadziedziczaca extends klasabazowa c) class klasadziedziczaca inherit klasa bazowa d) class klasadziedziczaca :: public klasa bazowa 7. W C++ instrukcja for(;;);

a) jest niepoprawna

b) powoduje nieskończoną pętle

c) jest poprawna, ale ignorowana przez kompilator d) powoduje jednokrotne wykonanie pustej instrukcji 8. Jaka jest ostatnia poprawna pozycja (indeks) dla tablicy 100

znaków

a) 99

b) 100

c) 101

d) żadna z powyższych

9.Ile razy wykona się następująca pętla

for(int i=0;i=3;++i)

a) zero razy

b) trzy razy

c) cztery razy

d) nieskończoną ilość razy

10.Który termin pasuje do podanego opisu: ' obiekt nie może zmieniać stanu wewnętrznego innych obiektów w nieoczekiwany sposób, tylko wewnętrzne metody są uprawnione do zmiany jego stanu'

a) Abstrakcja

b) Dziedziczenie

c) Enkapsulacja

d) Polimorfizm

11. Która z nazw nie jest poprawnym identyfikatorem w C++

(tzn. że np. nie można zadeklarować zmiennej o takiej nazwie) a) var0

b) _class

c) $x

d) duza_liczba

WSZYSTKIE SĄ OK BO STANDARD SIĘ ZMIENIŁ :P

12. Dla wskaźnika zadeklarowanego następująco: int const *x;

a) nie można modyfikować wskaźnika

b) nie można modyfikować wskazywanej wartości c) nie można modyfikować ani wskaźnika ani wartości przez niego wskazywanej

d) można modyfikować zarówno wskaźnik jak i wskazywaną przez niego wartość

13. Co oznacza następująca deklaracja double (*p)[10] ?

a) tablicę wskaźników do zmiennych typu double b) wskaźnik do tablicy zmiennych typu double c) tablicę wskaźników do tablicy zmiennych typu double d) żadne z powyższych

14.Dana jest następująca deklaracja funkcji: double funkcja(int a, double b);

napisać jak będzie wyglądała deklaracja wskaźnika do tej funkcji. Deklarowany wskaźnik powinien mieć nazwę 'p'

double (*p)(int a, double b)

15.Które z twierdzeń dotyczących konstruktorów w C++ nie jest poprawne:

a) służą do inicjalizacji tworzonego obiektu klasy b) nic nie zwracają (nawet void)

c) nie mogą być przeciążone

d) nazywają się dokładnie tak jak klasa w której są zadeklarowane

16.Argument wzorca klasy w C++ nie może być: a) typem

b) adresem obiektu

c) adresem funkcji łączonej zewnętrznie

d) wyrażeniem zmiennym (nie stałym)

17. (2 pkt.) Przy deklaracjach i podstawieniach: int *a, *b, i=4, k=1;

a= &i;

b=a;

*a*= *b;

uzupełnij jaka jest wartość zmiennej 'i'

i = _____16__________________

18. (3 pkt.) Jakie będą wartości zmiennych x[0], x[1] w wyniku następującego wywołania funkcji:

long x[2];

x[0]=3; x[1]=4;

f(x, x+1);

zdefiniowanej:

void f( long *a , long *b ) {

++a;

++*a;

}

x[0] = __3_____________________

x[1] = _____5__________________

19. (3 pkt.) Uzupełnij jakie będą wartości zmiennych i,j w wyniku następującego wywołania funkcji:

long i=1,j=4;

j= 2*f(&i, (int)j);

zdefiniowanej:

long f( long *a , int j ) {

j= 2*j;

*a=j+1;

return j;

}

i = ___9____________________

j = ____16___________________

20. (4 pkt.) Dana jest lista o elementach typu: struct element {

int x,y,wiek;

struct element *nastepny;

}

Napisz funkcję zwracającą maksymalną wartość pola wiek ze wszystkich elementów listy. (lista identyfikowana jest przez wskaźnik p do pierwszego elementu).

Int max (elem *p){

//zapamietaj wartość zmiennej wiek pierwszego elementu listy int tmp = p->wiek;

//przejdz przez wszystkie elementy listy

while(p = p->nastepny){

//porównaj wartości jak większa wartość to przypisz do tmp if(p->wiek > tmp)

tmp = p->wiek;

}

return tmp;

}