Existence of injective homomorphism I'm interested in knowing if $\operatorname{Hom}(-,S^1)$ is exact, understanding $S^1$ as the group of modulo $1$ complex numbers, is right exact on the category of finite abelian groups, because that would allow me to proof that every subgroup of such group $G$ is isomorphic to a quotient of $G$. 
Right now I'm trying to show that it transform injections in surjections. Let $H,G$ finite abelian groups and $h:H\to G$ injective homomorphisms. I'll write $h^*$ for $\operatorname{Hom}(h,S^1)$. To show that $h^*$ is surjective I take two homomorphisms $j: F\to H$ and $k:F\to H$ such that $j^*h^*=k^*h^*$. Let's apply this to $z\in \operatorname{Hom}(F,S^1)$. We get $j^*h^*(z)=k^*h^*(z)\Rightarrow z\circ h\circ j=z\circ h\circ k$. 
If I could find an injective morphism $z$ then I would have $h\circ j=h\circ k$,  which by injectivity of $h$ would result in $j=k$. I know in addition that $\operatorname{Hom}(F,S^1)\cong F$, so maybe I would just have to take the imagen of the element $(1,\dots, 1)$ (given by the structure theorem) under this isomorphism. Since this isomorphism is provided by the fact that $\mathbb{Z}_p\cong\mathbb{Z}_p^*$ identifying an element in $\mathbb{Z}_p$ with the $p$-th root to which $1$ is mapped, $(1,\dots, 1)^*$ would send the $i$-th $1$ to the first $p_i$-th root. Since each $p_i$ is different and they are primes, there are no coincident roots for different elements. 
Is what I'm trying to do possible? I'd be thankful if someone could also answer to my very first question, which is: is $\operatorname{Hom}(-,S^1)$ right exact in this context?
 A: The group $S^1$ of complex numbers of modulo $1$ is divisible, so it is an injective object in the category of abelian group, which is tantamount to saying that the functor $\operatorname{Hom}({-},S^1)$ is exact.
A group $D$ (written additively) is divisible if, for every $x\in D$ and every integer $n\ne0$, there is $y\in G$ such that $x=ny$.
A group $E$ is injective if the functor $\operatorname{Hom}(-,E)$ is right exact (or exact, since it is left exact for every group).
Being divisible is a necessary condition for being injective. Indeed, let $E$ be injective and consider the injection $n\mathbb{Z}\to\mathbb{Z}$. Since $E$ is injective, the induced map $\operatorname{Hom}(\mathbb{Z},E)\to\operatorname{Hom}(n\mathbb{Z},E)$ is surjective.
Take $x\in E$ and define $f\colon n\mathbb{Z}\to E$ by $f(nk)=kx$. Then, by assumption, this map is the restriction to $n\mathbb{Z}$ of a homomorphism $g\colon\mathbb{Z}\to E$. Then $x=f(n)=g(n)=ng(1)$, so taking $y=g(1)$ we have provided the element $y$ such that $x=ny$.
The converse is known as Baer's criterion: a right module $E$ over the ring $R$ is injective if and only if, for every right ideal $I$ of $R$ and every homomorphism $f\colon I\to E$, there exists $y\in E$ such that $f(r)=ry$, for every $r\in I$.
A: I think you can do this directly, since you are working in the category of finite abelian groups, because in this case, $F=\bigoplus^n_{i=1} Z_{q_i}$, where the $q_i$ are powers of primes. So, you can take $z:F\to S^1$ to be the homomorphism that sends each generator $\gamma_i$ of $Z_{q_i}$ to a particular $q_i$-th root of unity. 
