  Consider $\mathbb{Z}/8\mathbb{Z}\oplus \mathbb{Z}/2\mathbb{Z}$, and the
subgroup generated by $(2,1)$, it is a subgroup isomorphic to
$\mathbb{Z}/4\mathbb{Z}$. If my theorem holds, it must contained in a cyclic
group generated by some element of order $8$ which is impossible.
  The error in 4.2 is because "preimage" do not preserce the image of
$[x\mapsto px]$.
