Finite abelian groups - direct sum of cyclic subgroup Let $G$ be a finite abelian $p$-group. It is quite elementary to see that if $g \in G$ is an element of maximal order (and thus its span is a cyclic subgroup of $G$ of maximal order) then $G$ can be written as the direct sum $G=\langle g \rangle \oplus H$ for some $H \leq G$ (subgroup of $G$). For a proof see this for example (page 2).
My question: Do we need that $G$ is a $p$-group or does it also work for arbitrary finite abelian groups? 
I think it is wrong for general groups because I looked around quite a bit and always only found the above theorem, but I could not find a counter-example.
 A: The result follows for arbitrary finite abelian groups from the $p$-group case.
Remember that a finite abelian group $G$ is the direct sum of its $p$-parts,
$$G = G(p_1)\oplus \cdots\oplus G(p_n),$$
where $p_1,\ldots,p_n$ are the distinct primes that divide $|G|$, and
$$G(q) = \{ a\in G\mid q^ma = 0 \text{ for some }m\geq 0\},\qquad q\text{ a prime.}$$
If $a\in G$ is of maximal order, then we can write $a=a_1+a_2+\cdots+a_n$, where $a_i\in G(p_i)$. Since $a$ is of maximal order in $G$, then $a_i$ is of maximal order in $G(p_i)$. By the $p$-group case, we can write $G(p_i) = \langle a_i\rangle\oplus H_i$ with $H_i\leq G(p_i)$. Then $H_1+\cdots+H_n$ is a subgroup of $G$, it is the internal direct sum of the $H_i$, and since $G(p_i) =\langle a_i\rangle\oplus H_i$, then
$$\begin{align*}
G &= G(p_1)\oplus \cdots \oplus G(p_n)\\
&= (\langle a_1\rangle\oplus H_1) \oplus \cdots \oplus (\langle a_n\rangle \oplus H_n)\\
&= (\langle a_1\rangle\oplus\cdots \oplus\langle a_n\rangle) \oplus (H_1\oplus\cdots\oplus H_n).
\end{align*}$$
To finish off, note that $\langle a_1\rangle\oplus\cdots\oplus \langle a_n\rangle = \langle a\rangle$ (e.g., by the Chinese Remainder Theorem).
