number of real roots of the equation $f(f(x)) = c$

drew some graphs, fiddled with that. I don't see how you would know what to do without some sketches.

$$f(x) = x^4 - 4x + 1$$ $$g(x) = f(f(x)) = (x^4-4x+1)^4-(x^4-4x+1) + 1 \; , \; \; $$ then $$ 2+g(x) = x^2 \; (x^3-4)^2 \; \left( \; 2 + (x^4 -4x+2)^2 \; \right) $$ where $$ 2 + (x^4 -4x+2)^2 \; > \; \; 0 $$ We see that $2+g(x) $ has double roots (local minima) at $x=0$ and $x= 4^{1/3}$

You also need to know that there is a local max, the whole graph is a W shape.

$$ -25+g(x) = (x-1)^2 \; (x^2 + 2x+3) \; \cdot \left( x^{12} - 12 x^9 + x^8 + 48 x^6 -8x^5 +3x^4 -64 x^3 + 16 x^2 -12x - 9 \right) $$ The factor of degree 12 has two real roots, as had to happen because of the W shape. Indeed, taking $$ q(x) = x^{12} - 12 x^9 + x^8 + 48 x^6 -8x^5 +3x^4 -64 x^3 + 16 x^2 -12x - 9 , $$ we find $$ 9+q(x) = x (x^3-4) \left(x^8 - 8x^5 + x^4 + 16x^2 - 4x + 3 \right) , $$

where $$ x^8 - 8x^5 + x^4 + 16x^2 - 4x + 3 > 0$$ for some reason.

YES, $$ x^8 - 8x^5 + x^4 + 16x^2 - 4x + 3 = \frac{11 + (2x^4 -8x+1)^2}{4}$$

I had it draw $y = \frac{g(x)}{10}$ enter image description here

Just to check, the derivative

$$g'(x) = 16x^{15} - 208x^{12} + 48x^{11} + 960x^9 - 432x^8 + 48x^7 - 1792x^6 + 1152x^5 - 240x^4 + 1024x^3 - 768x^2 + 192x $$ factorws as $$g'(x) = x (x-1) (x^3-4) (x^2 + x+1) \left(x^8 - 8x^5 + 3x^4 + 16x^2 - 12x + 3 \right) $$