If $ f(f(f(x)))=x$, does$ f(x)=x$ necessarily follow? Does $f(f(f(x)))=x \implies  f(x)=x$? Is it necessary for it to follow? How do we prove this? Do we have to substitute some special $x$? Or is it some other consideration of its properties?
Edit: does it follow in the special case when f is surjective? Or would we wind up with the same thing?
 A: Another set of solutions:
$$f(x)=\frac{1}{2} \left(-i \sqrt{3} \sqrt{\left(x-c_1\right){}^2+c_2}+3 c_1-x\right)$$
A: No.  For instance, consider $f(x) = e^{2 \pi i/3} x$.  
Finding a function which equals another function when iterated is called finding a "fractional iterate," "iterative root," or "functional root."  In your case, you're talking about functional cube roots of the identity function.  The problem of finding functional roots of the identity function is apparently known as "Babbage's equation," as the problem was studied by Charles Babbage at the beginning of the 19th century.  You can find lots more information by Googling "Babbage's Equation."
A: A variant on Daniel's answer:
Define $$S : \mathbb{Z}/3\mathbb{Z} \rightarrow \mathbb{Z}/3\mathbb{Z}$$ by $$S(n) = n+1.$$
Then $$S(S(S(n))) = n+1+1+1 = n+3 = n,$$ but $$S(0) = 1 \neq 0.$$
A: Looking at Anixx's solution,
suppose
$f(x) = ax+b$.
Then
$f(f(x))
=a(ax+b)+b
=a^2x+b(a+1)
$
and
$f(f(f(x)))
=a(a^2x+b(a+1))+b
=a^3x+b(a(a+1)+1)
$.
If
$f(f(f(x))) = x$,
then
$a^3 = 1$
and
either
$b = 0$
or
$a(a+1)+1 = 0$.
For $b=0$,
then
$f(x) = wx$
works if
$w^3 = 1$.
For
$a(a+1)+1 = 0$,
then,
since
$a^3-1 = (a-1)(a^2+a+1)
$,
then
$a^3 = 1$
and
$a \ne 1$.
This is the same as before.
Therefore,
all linear solutions
are of the form
$wx+b$
for any $b$,
where
$w^3 = 1$.
