Który ciąg instrukcji nada zmiennej n wartość równą ilości liczb w pliku binarnym skojarzonym ze strumieniem fp?
Wymierz odpowiedź
a. fseek(fp, 0, 2); n=ftell(fp)/sizeof(double); Tak.
b. fseek(fp, 0, 2); n=ftell(fp);
c. n=fseek(fp, 0, 2) - fseek(fp, 0, 0);
d. for(n=0; fscanf(fp, ”%lf”, &x)==1; n++);
Plik binarny zawiera liczby typu double. Jak poprawnie wczytać te liczby do tablicy A, która zawiera 500 zmiennych typu double (nie wolno wczytać więcej niż 500 liczb) i nadać zmiennej n wartość równą ilości wczytanych liczb?
Wymierz odpowiedź
a. for( n=0; fread( A+n, sizeof(*A), 1, fp)==1; n++ ) ; NIE!
b. for( n=0; n<500; n++ ) if( fscanf(fp, "%lf", A+n )!=1) break; NIE! NIE! xD
c. for( n=0; fscanf(fp, "%lf", A+n )==1; n++ ) ; NIE
d. n=fread( A, sizeof(*A), 500, fp ); TAK
Zdefiniowano int k = 29, n = 10; oraz double x, y; Jakie wartości otrzymają zmienne x oraz y po wykonaniu instrukcji
x = k/n;
y=(double)k/n;
Wymierz odpowiedź
a. x = 2.9, y = 2.9
b. x = 2.0, y = 2.0
c. x = 2.0, y = 2.9 TAK
d. x = 3.0, y = 2.9
Ile bajtów zajmuje tekst "\tANSI-C\n" ?
Wymierz odpowiedź
a. 11
b. 9 TAK
c. 10
d. 8
Które napisy są stałymi rzeczywistymi w C lub C++?
Wybierz co najmniej jedną odpowiedź
a. -3.14u
b. 2e-3 TAK
c. -1.2e3
d. 0.05F TAK
Zaznacz poprawne definicje inicjujące tablice
Wybierz co najmniej jedną odpowiedź
a. int M[ ] [ 4 ] = { { 1, 2 }, { 0 }, { 3, 4, 5, 6, 7 } }; NIE
b. int M[ ] [ ] = { { 1, 2 }, { 0 }, { 3, 4, 5, 6 } }; NIE
c. int M[ ] [ 4 ] = { { 1, 2 }, { 0 }, { 3, 4, 5, 6 } }; TAK
d. int K[ ] = { 3, 7, 2, 1 }; TAK
e. int K[ 4 ] = { 3, 7, 2, 1, 6 }; NIE
Które napisy są stałymi całkowitymi w C lub w C++?
Wybierz co najmniej jedną odpowiedź
a. -15 (minus 15) NIE
b. 0x12 TAK
c. 'A' (znak A w apostrofach) TAK
d. "A" (znak A w cudzysłowach) NIE
Plik binarny poprawnie otwarty instrukcją FILE *fp=fopen(nazwa,”rb”); zawiera dane typu double. Jak poprawnie wczytać te dane do tablicy zdefiniowanej double X[100]; ?
Wymierz odpowiedź
a. n=fread(X, sizeof(X[0]), 100, fp); TAK
b. for(n=0; n<100; n++) fscanf(fp, ”%lf”, X+n); NIE
c. for(n=0;n<100 ; n++) fread(X+n, sizeof(X[0]), 100, fp); NIE
d. for(n=0; fscanf(fp, ”%lf”, X+n)==1 ; n++) if(n==100) break; NIE
a. Liczba znaków w tekście z ogranicznikiem - liczba 9
b. Liczba znaków w tekście bez ogranicznika - liczba 8
c. Wskazanie początkowego znaku tekstu - znaku P
d. Kod początkowego znaku tekstu - kod ASCII litery P NIE
1
Punkty: 1
double Funkcja(int n) {
Jaką instrukcję może tu zawierać poprawna funkcja rekurencyjna (jeżeli jest to jedyna brakująca instrukcja)?
return S;
}
Wybierz co najmniej jedną odpowiedź
a. if(n>1) S = n*Funkcja(n-1); else S=1; Poprawnie Dobrze
b. S = n>1 ? n*Funkcja(n-1) : 1; Poprawnie Dobrze
c. for(S=1; n>1; n--) S*=n;
d. S = n*Funkcja(n-1);
Zaznacz 2 reguły, które określają kolejność wykonywania operacji (opracowywania operatorów).
Z dwóch sąsiadujących operatorów najpierw opracowuje się operator:
Wybierz co najmniej jedną odpowiedź
a. z lewej strony (jeśli priorytety są jednakowe). Niepoprawny NIE
b. z lewej lub prawej strony zależnie od łączności (jeśli priorytety są jednakowe). TAK
c. o wyższym priorytecie (jeśli ich priorytety są różne). Poprawnie O kolejności decyduje priorytet. TAK
d. o mniejszej liczbie argumentów (jeśli mają różne liczby argumentów) NIE
Zaproszenia do wprowadzania danych wysyłamy używając funkcji:
Wymierz odpowiedź
a. fscanf(stderr, ... NIE
b. fprintf(stderr, ... TAK
c. scanf NIE
d. printf ewentualnie fprintf - obojętnie NIE
W jakim systemie można pisać stałe całkowite?
Wybierz co najmniej jedną odpowiedź
a. dziesiętnym Poprawnie TAK
b. ósemkowym (8) Poprawnie TAK
c. dwójkowym (2) Niepoprawny nie!
d. szesnastkowym (16) Poprawnie tak
Zaznacz poprawne definicje tablic z tekstami.
Wybierz co najmniej jedną odpowiedź
a. char T[ 10 ] = "Tekst"; TAK
b. char *T[ 2 ] = { "Tekst 1", "Tekst 2", "Tekst 3" }; NIE
c. char T[ ][ ] = { {"Tekst 1"}, {"Tekst 2"} }; NIE
d. char T[ ] = "Tekst"; TAK
e. char *T[ ] = { "Tekst 1", "Tekst 2" }; TAK
f. char T[ 5 ] = "Tekst"; NIE
Wartością stałej tekstowej "Przyklad" jest:
Wymierz odpowiedź
a. Kod początkowego znaku tekstu - kod ASCII litery P
b. Liczba znaków w tekście z ogranicznikiem - liczba 9
c. Wskazanie początkowego znaku tekstu - znaku P Poprawnie Tak
d. Liczba znaków w tekście bez ogranicznika - liczba 8
Zaznacz funkcje, które mają predefiniowaną zmienną this.
Wybierz co najmniej jedną odpowiedź
a. Konstruktory TAK
b. Niestatyczne funkcje klasy. TAK
c. Statyczne funkcje klasy. NIE
d. Globalne funkcje zaprzyjaźnione z klasą NIE
e. Operatory przypisania TAK
Co realizuje podane zadania?
Dopasuj nazwy do opisów.
Definiuje konwersję z innego typu do typu swojej klasy. KONSTRUKTOR JEDNOARGUMENTOWY
Tworzy obiekt na wzór innego obiektu tej samej klasy KONSTRUKTOR KOPIUJĄCY
Przygotowuje obiekt do usunięcia go z pamięci DESTRUKTOR
Definiuje konwersję z typu swojej klasy do innego typu KONWERTER
Zaznacz prawdziwe zdania o zmiennych i funkcjach statycznych.
Wybierz co najmniej jedną odpowiedź
a. Zmienne statyczne nie mogą zmieniać wartości. NIE
b. Funkcje statyczne mają zdefiniowaną zmienną this. NIE
c. Funkcje statyczne można aktywować tylko do obiektów statycznych. NIE
d. Zmienne statyczne nie wchodzą w skład obiektów. TAK
e. Zmienna statyczna jest wspólna wszystkim obiektom swojej klasy. TAK
Co deklarują w klasie ABC następujące deklaracje?
Dopasuj odpowiedzi.
double() const; KONWERTER
ABC(double); KONWERSJA KONSTRUKTOROWA
ABC(char *p=0); KONSTRUKTOR BEZARGUMENTOWY
virtual ~ABC(); DESTRUKTOR
ABC(const ABC&); KONSTRUKTOR KOPIUJACY
Zaznacz funkcje, jakie należy zdefiniować w klasie, której konstruktory alokują pamięć do dyspozycji obiektów?
Wybierz co najmniej jedną odpowiedź
a. Konstruktor kopiujący TAK
b. Destruktor TAK
c. Operator new NIE
d. Operator przypisania TAK
e. Konstruktor bezargumentowy NIE
Jeżeli klasa bazowa jest upubliczniona, to jej dane i funkcje publiczne oraz zabezpieczone są w klasie pochodnej:
Wymierz odpowiedź
a. zabezpieczone (jedne i drugie) NIE
b. publiczne stają się zabezpieczone, a zabezpieczone - prywatne. NIE
c. publiczne pozostają publiczne, a zabezpieczone - zabepieczone TAK
d. publiczne (jedne i drugie) NIE
Pomiędzy klasą pochodną i jej klasą bazową istnieją standardowe konwersje:
Wybierz co najmniej jedną odpowiedź
a. z typu wskaźnikowego klasy bazowej do typu wskaźnikowego klasy pochodnej NIE
b. z typu klasy bazowej do typu klasy pochodnej NIE
c. z typu klasy pochodnej do typu klasy bazowej TAK
d. z typu referencyjnego klasy pochodnej do typu referencyjnego klasy bazowej TAK