$p$-groups in which the centralizers are normal 
Let $|G|=p^n$ and $p$ a prime and let $|G:C_G(x)|\leq p$ for all $x\in G$. Prove:
$(a)~~~~~C_G(x)\trianglelefteq G$ for all $x\in G;$
$(b)~~~~~G’\leq Z(G);$
${\color{red}{{(c)~~~~~|G’|\leq p}.}}$

Edit: I’m now only confused about $\bf (c)$. For $\bf(c)$, the nice answers below are not complete. I was told that $\bf (c)$ has something to do with this paper (or here Knoche,H.G.: Überden Frobeniusschen Klassenbegriff in nilpotenten Gruppen, Math. Z. 55 (1951), 71–83.
), but reading the whole paper would be difficult for me, since I’m no German speaker; more unfortunately, I have not even been able to figure out which part I need to read. How does that paper help? I’m quite a beginner in group-theory, and I would be grateful if I could receive your instruction.
 A: For $(a)$,  what you need to show is something  more general: any subgroup of index $p$ in a $p$-group $G$ is a normal subgroup of $G$. 
For $(b)$ remark that $G/C_G(x)$ is abelian for all $x$ thus 

 $G'\leq C_G(x)$ (by definition $G'$ is contained in every normal subgroup $N$ of $G$ such that $G/N$ is abelian).

And then use the equality :

 $\bigcap_{x\in G}C_G(x)=Z(G)$.

For $(c)$, the Frattini subgroup is defined as the intersection of all maximal subgroups. Maybe you should stay simple. Although I quite don't see why, I would be inclined to think that you want to show that either $G=Z(G)$ or $|Z(G)|=p$. 
A: For $(c)$ you need Satz 2 at the bottom of page 84; this applies in case the index of the normalizer of any element of $G$ is at most $p$ (which the paper phrases as $r=1$).
The fact that $r\leq1$ follows immediately from the premise that $|G:C_G(x)|\leq p$ for all $x\in G$. The separate case that $r=0$ is easy as then $G$ is abelian.

As in the paper, let $r$ be the smallest integer for which $|G:N_G(x)|\leq p^r$ holds for all $x\in G$, where $N_G(x)$ denotes the normalizer of $x$ in $G$. Because $C_G(x)\subset N_G(x)$ and $|G:C_G(x)|\leq p$ for all $x\in G$ it follows that $r\leq1$. Here's a rough paraphrase of Satz 2 and the relevant half of the proof:
Theorem 2. Let $G$ be a finite $p$-group. Then $r=1$ if and only if $|G'|=p$.
Proof. Let $K:=[A,B]\neq e$ be a commutator of two elements of $G$, and let $[A',B']$ be another commutator distinct from $e$ with $A',B'\in G$. Then we choose another element $A''\in G$ that is not contained in $N_G(B)$ and $N_G(B')$. Under these assumptions $A''$ lies in $A^iN_G(B)$ for some $i\neq0\pmod{p}$, and so because $G'\subset Z(G)$ we get
$$[A'',B]=[A,B]^i=K^i.$$
Similarly there exists $j\neq0\pmod{p}$ such that 
$$[A'',B']=[A'',B]^j=K^{ij},$$
and finally
$$[A',B']=[A'',B']^k=K^{ijk}.$$
We see that the commutator of an arbitrary pair of group elements can be written as a power of one and the same element $K$. As every $p$-th power lies in $Z(G)$, also the $p$-th power of a commutator equals $e$. Hence $G'$ is cyclic of order $p$.
[This proves one half of the theorem, the other half I have omitted.]
In the remaining case that $r=0$, clearly $G$ is abelian and hence $|G'|=1$.
A: For part (a), you can use this corollary.

Corollary. If $G$ is a finite group of order $n$ and $p$ is the smallest prime dividing $|G|$, then any subgroup of index $p$ is normal.

Here if $|G:C_{G}(x)|=p$, then by the corollary, $C_{G}(x)\unlhd G$. 
