Który z zestawów słów kluczowych języka ANSI C jest niepoprawny:
a) if, signed int, default b) for, long float, sizeof
c) long int, do, switch d) case, long, unsigned char
Które z poniższych słów nie jest słowem kluczowym języka ANSI C:
a) repeat b) else c) break d) signed
Która nazwa w języku ANSI C zdefiniowana przez programistę jest niepoprawna?
a) tablica b) MojeDane c) 10liczb d) x12
int *A[10]; Taka deklaracja to:
a) tablica dziesięciu wskaźników na wartości typu int
b) wskaźnik na tablicę dziesięciu wartości typu int
c) tablica dziesięciu liczb całkowitych
d) wskaźnik na tablicę wskaźników dziesięciu liczb całkowitych
Która z deklaracji jest niepoprawna:
a) int **a; b) char s[99]; c) int A[]; d) double x[1];
Dany jest fragment programu:
int a, b = 1;
a = (b < 1) ? 2 + b << 2 : b << 3 + 2;
Jaką wartość przyjmie zmienna a?
a) 32 b) 10 c) 6 d) 8
Dany jest fragment programu:
int a = 2, b = 3, c;
c = (a, a += b, b = ++a+b++);
Jakie wartości przyjmą zmienne a, b, c?
a) 5, 10, 9 b) 6, 10, 8 c) 6, 9, 9 d) 6, 10, 9
Dana jest funkcja:
void oblicz(int a)
{
int b;
...
}
Jaką wartością zostanie zainicjalizowana zmienna b?
a) 0 b) wartością zmiennej a
c) wartością nieokreśloną d) 1
Które z poniższych wyrażeń jest błędne przy założeniu, że zmienne a, b, c, d są typu całkowitego?
a) 195; b) (a+1)++;
c) c = a ? b : d++; d) a += (10*b)>>2;
Która z poniższych instrukcji jest poprawna?
a) int i = 10; switch (i; i+=10); b) for (i = 1; i < 10, i++);
c) ; d) do {};
Funkcja main została zdefiniowana jako:
int main(int argc, char *argv[]). Parametry argc i argv oznaczają:
a) argc - liczba zmiennych w programie, argv - tablica wskaźników łańcuchów zawierających nazwy zmiennych w programie
b) argc - liczba parametrów wywołania programu, argv - wskaźnik łańcucha zawierającego treść wiersza poleceń
c) argc - liczba parametrów wywołania programu, argv - tablica wskaźników łańcuchów zawierających parametry z wiersza poleceń
d) argc - liczba parametrów wywołania programu, argv - tablica wskaźników łańcuchów zawierających parametry z wiersza poleceń, przy czym argv[0] zawiera nazwę lub pełną ścieżkę do uruchamianego programu
Zadeklarowano zmienne: float *p, A[20];
Które z poniższych przypisań jest prawidłowe?
a) p = &A; b) A[20] = p;
c) p = A; d) *p = A;
Dany jest fragment programu:
a = -1; b = -1;
if (a > 0)
if (b++ < 0)
{ a = 5; }
else
{ a = 0; b++; }
Jakie wartości przyjmą zmienne a i b?
a) -1, -1 b) 0, 0 c) -1, 0 d) 5, -1
Dany jest fragment programu:
float x, suma = 0;
for (x = 0; x!= 10; x+=0.1)
suma += x;
Które ze zdań jest prawdziwe?
a) pętla wyznaczy sumę liczb od 0 do 10 z krokiem 0.1
b) wartość zmiennej x będzie zwiększana w co drugim przebiegu pętli
c) zmienna x nie osiągnie wartości 10
d) pętla wykona 99 iteracji
Dany jest fragment funkcji:
int x, suma;
for (x = 0; x < 10; x++)
suma += x;
Jaką wartość przyjmie zmienna suma?
a) 10 b) 9 c) nieokreśloną d) 0
Instrukcja continue powoduje:
a) wyjście z dowolnej pętli
b) przeniesienie wykonywania programu do warunku sprawdzanego w pętli while lub do-while
c) przeniesienie wykonywania programu do warunku sprawdzanego w pętli for
d) przeniesienie wykonywania programu do pierwszej instrukcji w pętli do-while
int a = 6, b = 5, c; c = a & b; Jaką wartość przyjmie zmienna c?
a) 30 b) 4 c) 7 d) 11
int a = 5, b; b = a << 2; Jaką wartość przyjmie zmienna b?
a) 3 b) 7 c) 10 d) 20
Zadeklarowano: int a[5]; Jaką wartość zwróci wyrażenie sizeof a w systemie 32-bitowym?
a) użycie operatora sizeof dla zmiennej tablicowej jest niepoprawne
b) 5 c) 160 d) 20
Poprawny zestaw instrukcji języka ANSI C to:
a) break, while, goto b) long, case, do
c) switch, if, unsigned d) for, sizeof, switch
Test nr 1A