Finding a subgroup of an abelian group that is isomorphic to Z

The question: If G is an abelian group and f is a surjective homomorphism from G to Z with kernel K, prove that G has a subgroup H such that H is isomorphic to Z.

By the first isomorphism theorem I know that G/K is isomorphic to Z (as Z is the image of f). So I figure I just have to find an H that is isomorphic to G/K, and I'm good (thanks to the transitivity of isomorphisms).

• More interestingly, $G$ must have $\mathbb Z$ as a direct factor, at least when $G$ is finitely generated. – lhf Apr 29 '15 at 0:14

Hint: You only need to prove that $G$ contains an element of infinite order.
If $\phi:G \to \mathbb Z$ is a surjective homomorphism, take $g \in G$ such that $\phi(g)=1$.
• $K$ is a red herring. – lhf Apr 29 '15 at 0:10