There is an edge emanating from any vertex of $G$ because otherwise the corresponding row (or column, according to our convention for forming the adjacency matrix) would be zero. Label the vertices as $v_1,\dots,v_n$. According to the observation just made, for any $i$, we can pick an index $f(i)$ such that there is a directed edge from $v_i$ to $v_{f(i)}$—thus a function 
$f:\{1,\dots,n\}\rightarrow\{1,\dots,n\}$. There clearly exists an index $k$ and a positive integer $m$ such that $f^{\circ m}(k)=k$ and $k,f(k),\dots,f^{\circ (m-1)}(k)$ are pairwise distinct. Now $v_k,v_{f(k)},\dots,v_{f^{\circ (m-1)}(k)}$ is a directed cycle of $G$. 


**Update)** The OP seems to be asking for a subgraph $H$ which is a disjoint union of directed cycles; and furthermore, *contains all vertices of $G$*. <s>This harder question asks if every vertex of $G$ belong to a directed cycle.</s> For this to hold, every vertex should belong to a directed cycle. My argument above shows that $G$ admits a directed cycle if no row of its adjacency matrix is zero. To show the stronger result that every vertex of $G$ belongs to a directed cycle, one should exploit the non-singularity of the adjacency matrix. Here is a simple argument based on the Cayley-Hamilton theorem: Denote the adjacency matrix by $A$—the entry $(i,j)$ is $1$ iff there is a directed edge from $v_i$ to $v_j$ ($i,j\in\{1,\dots,n\}$). By the Cayley-Hamilton theorem, there is a linear combination of $n\times n$ matrices $I,A,\dots,A^{n-1}$ which is zero and has $\pm\det(A)\neq 0$ as the coefficient of $I$. Considering entries $(i,i)$ ($1\leq i\leq n$ arbitrary), we deduce that for at least one of the matrices $A,\dots,A^{n-1}$ the entry at that position is non-zero. But if the entry $(i,i)$ of the $m^{\rm{th}}$ power of the adjacency matrix, $A^m$, is non-zero, then $v_i$ must lie on a directed cycle of length at most $m$.