This method is combinatorial, rather than the more usual algebraic methods. It's based on an exercise from Herstein's book Abstract Algebra.

We note that in any field, the equation

xm = 1
has at most m roots. Thus, it suffices to prove the following.

Lemma: Let G be a finite group with n elements, in which for every m (which necessarily divides n) there are at most m solutions for the equation xm = 1. Then G is a cyclic group.

Proof: Denote by am the number of elements of G of order m. Then am is 0 if m does not divide n. If am is non-zero, then there exists some element gG of order m. But then the m powers of g are all solutions of xm = 1, therefore by the conditions on G these are all of the solutions. Now, g generates a cyclic group of order m, and this group has φ(m) generators (where φ(m) is Euler's totient function, the number of numbers in 1,...,m coprime with m). Thus, if am is non-zero, then it is precisely φ(m).

We've just shown that am=0 if m doesn't divide n, and that if it does divide, then it is either 0 or φ(m). But

m|n φ(m) = n.
(the sum of phi(m) over all factors m of n is precisely n (to see this, just consider orders of elements in the cyclic group!)). On the other hand, the sum of all am's is also n: every element has an order. The only way this can be is if am=φ(m) for every m which divides n. In particular, an = φ(n) > 0, so G contains elements of order n, and is a cyclic group.