Does an inverse exist for a set of complex numbers with operation of multiplication? I will give some context of my question: I was trying to solve this problem

Let $S$ be a finite non-empty set of non-zero complex numbers which is closed under multiplication. Show that $S$ is a subset of the set $\{z \in \mathbb C: |z|=1 \}$. Show that $S$ is a group, and deduce that for some $n \in \mathbb N$, S is the set of n-th roots of unity.

When trying to prove that $S$ is a subset of $\{z \in \mathbb C: |z|=1 \}$, I tried to argue that since $S$ is closed, $\forall a \in S, \ \exists \ \text{a corresponding} \ n \in \mathbb N^+ $ such that $$a^n = a \tag{1}$$ and hence $|a|=1$.
Now I want to prove that the identity element is in $S$, can I argue from $(1)$ that $a^{n-1}=e=1$? 

To prove this in the order suggested:


*

*Let $a \in S$. If $|a|>1$, then $1 < |a| < |a|^2 < \cdots $ and the powers of $a$ would be an infinite subset of $S$. The same would follow if $|a|<1$. Thus, $|a|=1$.

*Let $S$ have $n$ elements. Consider $x \mapsto ax$. This is injective and so is surjective. Therefore $a_1 \cdots a_n = (a a_1) \cdots (a a_n) = a^n a_1 \cdots a_n$ and so $a^n=1$, which proves in one stroke that $S$ is a group formed by $n$-roots of unity. Since $n$ has $n$ elements, $S$ is the set of all $n$-roots of unity.
(This last argument is the proof of the little Lagrange theorem for finite abelian groups.)
