Suppose $A$ is a matrix with distinct and positive $n$ eigenvalues. How many real matrices $B$ exist such that $B^k=A$? Suppose $\mathbf{A}$ is an $n\times n$ matrix with distinct and positive $n$ eigenvalues.
How many real matrices $\mathbf{B}$ exist such that $\mathbf{B}^k=\mathbf{A}$?

Maybe diagonalization or Jordan decomposition is useful?

By the spectral mapping theorem, the eigenvalues of $B$ must be $k$'th roots of the eigenvalues of $A$, the corresponding eigenvectors also being eigenvectors of $A$.  Now if $B$ is real, its complex eigenvalues come in complex-conjugate pairs, but then the $k$'th powers of such a pair would also be complex conjugates, and so equal (since they are real).  Thus $B$'s eigenvalues are all real.  If $k$ is odd, each eigenvalue of $A$ has only one real $k$'th root, and so $B$ is unique.  If $k$ is even, each eigenvalue of $A$ has two real $k$'th roots (one positive and one negative).  Each choice
of $k$'th roots of the eigenvalues gives you a $B$, so there are 
$2^n$ $B$'s.
