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.

-

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_1)$. 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).