Prove that set $A$ a finite abelian group and $B$ multiplicative group of all homomorphisms from $A$ to units of $C$ are isomorphic 
Let $A$ be a finite abelian group and let $B := \{f: A \to \mathbb  C^{×} | f$ is a group homomorphism $\}$. It can be easily checked that $B$ is an abelian group via $fg(x) = f(x)g(x)$.
  Prove that $A$ is isomorphic to $B$. Also, prove that if $f$ is not an identity element of $B$ then $\sum _{a \in A} f(a) = 0$.

This problem is from a module theory class which previously dealt with group theory. I have no idea how this would relate to module theory.
I attempted to look at a special case, $A = \mathbb{Z / 2Z}$. For notational simplicity denote the two elements by $1,0$. To find a corresponding isomorphism, we must send $1$ to some $f$. say $f(0) = a, f(1) = b$. Then $a = f(0) = f(2 * 1) = 2f(1) = 2b$, and similiarly $a = 4b$, so that $a = b = 0$, which is inpossible since the image of $f$ must lie outside of $0$.
Am I doing something wrong here? Any input for solving the problem - not just critic of my attempt - would be greatly appreciated. The second part, which I tried to prove by assuming the first, didn't work out so well. How is module theory related to this?
 A: The problem with your special case is that we want the multiplicative group of the units of $\mathbb{C}$, so we have that $f(2 \cdot 1) = f(1)^2$, not $f(2 \cdot 1) = 2f(1)$. Since $f$ is a homomorphism, it maps the identity element of $A$ to the identity element of $\mathbb{C}^\times$, and so $f(0) = 1$. Since $f(1)^2 = f(0) = 1$, we get that $f(1) = -1$ or $f(1) = 1$.
In the general case, the classification of finite abelian groups tells us that
$$
  A \simeq \mathbb{Z} / n_1 \mathbb{Z} \times \mathbb{Z} / n_2 \mathbb{Z} \times \cdots \times \mathbb{Z} / n_k \mathbb{Z} 
$$
for some natural numbers $n_1, n_2, \dots, n_k$.
The homomorphism $f : A \to \mathbb{C}^\times$ is then uniquely determined by the images of the elements $\eta_1 = (1, 0, 0, \dots, 0), \eta_2 = (0, 1, 0, \dots, 0), \dots, \eta_k = (0, 0, \dots, 0, 1)$.
Since $n_i \eta_i = 0$ for each $i$, we have that $f(\eta_i)^{n_i} = f(0) = 1$, and so $f(\eta_i)$ is some $n_i^\text{th}$ root of unity.
Let $\zeta_i$ be a primitive $n_i^\text{th}$ root of unity.
To construct the isomorphism between $A$ and the group of homomorphisms from $A$ to $\mathbb{C}^\times$, we can map each element $(a_1, a_2, \dots, a_k)$ of $A$ to the function which maps $\eta_i$ to $\zeta_i^{a_i}$ for each $i$. We then just need to check that this does indeed define an isomorphism.
As for the final problem, let $f$ be some non-identity element of $B$. Then $f(\eta_i) \neq 1$ for some $i$. Suppose without loss of generality that $f(\eta_1) \neq 1$. We then have that
$$
  \sum_{a \in A} f(a) = \sum_{a_1=0}^{n_1-1} \sum_{a_2=0}^{n_2-1} \cdots \sum_{a_k=0}^{n_k-1} f((a_1, a_2, \dots, a_k)) = \sum_{a_1=0}^{n_1-1} \sum_{a_2=0}^{n_2-1} \cdots \sum_{a_k=0}^{n_k-1} f((a_1, 0, \dots, 0)) f((0, a_2, \dots, a_k)) = \sum_{a_1=0}^{n_1-1} f((1, 0, \dots, 0))^{a_1} \sum_{a_2=0}^{n_2-1} \cdots \sum_{a_k=0}^{n_k-1} f((0, a_2, \dots, a_k)).
$$
But $f((1, 0, \dots, 0))$ is a $n_1^\text{th}$ root of unity which is not equal to $1$, and for any $n_1^\text{th}$ root of unity $\omega \neq 1$, we have that
$$
  \sum_{a_1=0}^{n_1-1} \omega^{a_1} = 0,
$$
and so we have that
$$
  \sum_{a \in A} f(a) = 0.
$$
