##group=vyrazy ##answer=2 Jaká bude hodnota proměnné j po skončení programu ? int i=2,j=4,k=7; j=6>k<5>j++<4>=k|2; *** j= 6 > k < 5 > j++ < 4 >= k | 2; *** Priority: ++, {>, <, >=}, k, = *** Vyhodnocuje se z leva do prava a nakonec se priradi 2 *** Odpoved: 2 ##group=vyrazy ##answer=1 Nech» makro MAKRO je definováno takto: #define MAKRO(x,y) y,x Jaká bude hodnota výrazu MAKRO(j++,++j), pokud j=0 ? *** ++j,j++ ##group=vyrazy ##answer=0 Nech» makro MAKRO je definováno takto: #define MAKRO(x,y) x-y Jaká bude hodnota výrazu MAKRO(i-,-i), pokud i=2 ? *** i---i se vyhodnoti jako i-- - i ##group=vyrazy ##answer=c Jaká bude hodnota výrazu (int)(unsigned char)-(unsigned char)01234 ? (a) -1234 (b) 1234 (c) 100 (d) 200 *** 01234_oct = 668 = 1010011100 ... 10011100 = 156 (unsigned char) *** (usigned char) -156 = 100; *** 100 ##group=vyrazy ##answer=c Jaká bude hodnota proměnné i po skončení programu ? int i=2; i=i++,++i,i++,++i,i++; (a) 5 (b) 6 (c) 7 (d) 3 *** (c) 7 ##group=vyrazy ##answer=14 Jaká bude hodnota proměnné i po skončení programu ? int i=2,j=2; i=(i++)*j+(++i)*i; *** ##group=vyrazy ##answer=-109 Jaká dube hodnota proměnné i po skončení programu ? int i; char j=145; i=((char)j|2); *** char je defaulne signed char *** bitove 145 OR 2 je 147 a to odpovida cislu -109 ##group=cykly ##answer=c Jaká bude hodnota proměnné k po skončení programu ? char i=126,j=0,k=0; for(;(i+=2) || !j--;k++); (a) 64 (b) 0 (c) -64 (d) program nikdy neskončí ##group=funkce ##answer=(i=26,j=14) Jaké budou hodnoty proměnných i a j po skončení funkce fce ? int i=4,j; int fce(int j) { i=(j+=5)+j++; return j; } j=fce(++i+3); *** funkce dela i = (j += 5) + j++; *** Preda se ji 8, i = 5 *** i = 26, j = 14 ##group=funkce ##answer=(i=6,j=13) Jaké budou hodnoty proměnných ia j po skončení funkce fce ? int i=6,j=3; void fce(int i) { j+=4+i++; } fce(i); *** funkce dela j+=4+i++ *** 4+i++... j = 13, i = 6 (pokud to neni globalni)