W języku C liczby z częścią ułamkową (np. 3,14) przechowuje się w typach zmiennoprzecinkowych. Do tej grupy należą przede wszystkim: float, double oraz long double. Wśród podanych odpowiedzi jedynym typem zmiennoprzecinkowym jest double, dlatego to on poprawnie wskazuje typ stosowany do reprezentacji liczb zmiennoprzecinkowych.
Odpowiedź "bool" jest niepoprawna, ponieważ typ logiczny służy do przechowywania wartości prawda/fałsz. Choć w praktyce bywa mapowany na 0 i 1, nie jest przeznaczony do obliczeń na ułamkach ani do reprezentacji wartości rzeczywistych.
Odpowiedź "char" jest niepoprawna, bo to typ znakowy (w sensie języka C jest to także mały typ całkowity), używany do przechowywania znaków lub małych wartości całkowitych. Nie przechowuje on liczb w formacie zmiennoprzecinkowym.
Odpowiedź "int" jest niepoprawna, ponieważ int reprezentuje liczby całkowite (bez części ułamkowej). Użycie int w obliczeniach wymagających ułamków prowadzi do obcinania części ułamkowej przy operacjach całkowitoliczbowych.
Wskazówka egzaminacyjna: jeśli w treści pojawia się "zmiennoprzecinkowe", szukaj typów z rodziny float/double. Jeśli mowa o "logicznych" wybieraj bool, a gdy o "całkowitych" wybieraj int (lub pokrewne).