Prove that for any nonsingular complex matrix $A$ and for any positive integer $k$, the equation $X^k = A$ has a solution 
Prove that for any nonsingular complex matrix $A$ and for any positive integer $k$, the equation $X^k = A$ has a solution.

Any tips or solution?
 A: If $A$ is normal, then $A$ is unitarily similar to a diagonal matrix, i.e. a unitary matrix $P$ exists s.t. $PAP^{-1}=D$ with $D$ diagonal.
If so, then
$$
PX^{k}P^{-1} = (PXP^{-1})^{k} = PAP^{-1} = D = \operatorname{diag}(\lambda_1,\ldots,\lambda_n)
$$
If for any element $\lambda_i$ on the diagonal of $D$ we take one of its $k$-roots $\mu_i$, and then form
$$
T = \operatorname{diag}(\mu_1,\ldots,\mu_n)
$$
then $T^{k} = D = PX^{k}P^{-1}$ and then
$$
X^{k} = P^{-1}T^{k}P = (P^{-1}TP)^{k} \implies X = P^{-1}TP.
$$
A: Here is more algebraic proof (as compared to my previous attempts which, admittedly, involved some hand waiving).
If A is diagonal then this is easy i.e. $A= CD({\lambda}_1,{\lambda}_2,..)C^{-1}$ and one takes $X=CD({\lambda}_1^{1/k},{\lambda}_2^{1/k},..)C^{-1}$ . Now, $A$ has Jordan decomposition into blocks.
Some of them are diagonal so this is not a problem due to the above.
But some may be of the form "${\lambda}$ on main diagonal $1$ above".
To handle this case, write such block in the form ${\lambda}(I + N)$ where $I$ is the identity and $N$ is nilpotent. Assuming the block size is $p$ we have $N^m = 0$ if $m>p$. Since the function $(1+x)^{1/k}$ is analytic in the neighborhood of $0$ we have $(1+x)^{1/k} = a_1 + a_2x + ...a_nx + ...$.
Plugging in for $1$ the identity matrix and for $x$ the $N$ matrix one gets
$(I + N) = (a_1I + a_2N + ... a_{p_1}N^{p-1} + ...)^k$. But the sum on the right is finte, i.e.
$(I + N) = (a_1I + a_2N + ... a_{p_1}N^{p-1})^k$
Lastly, since $\lambda$ is not $0$ divide by $p$ root of it.
