Another approach: One possible definition of a unitary operator is: U is said to be unitary if it's a normed space isomorphism (a linear bijective isometry) from H onto H. A linear isometry is obviously bounded. We can prove that a unitary operator defined this way satisfies [itex]\langle Ux,Uy\rangle[/itex] for all x,y. This implies that [itex]U^*U=1[/itex]. We can also prove that the set B(H) of bounded linear operators satisfy the definition of a C*-algebra. The norm of U then follows immediately from the C*-identity [itex]\|A\|^2=\|A^*A\|[/itex], which is satisfied by all members of B(H).
D'oh, for a moment I thought that this thread was about determining the norm of a unitary operator, but it's about proving that U*U=1. In this approach, the definition includes the condition [itex]\|Ux\|=\|x\|[/itex] for all x. This clearly implies that [itex]\langle Ux,Ux\rangle=\langle x,x\rangle[/itex] for all x. Now if we let y,z be arbitrary, and insert stuff like y+z and y-z into that result, we will see (after a little algebra) that [itex]\langle Ux,Uy\rangle=\langle x,y\rangle[/itex] for all x,y.