We have in and out degree of a directed graph G. if G does not includes loop (edge from one vertex to itself) and does not include multiple edge (from each vertex to another vertex at most one directed edge), we want to check for how many of the following we have a corresponding graph. the vertex number start from 1 to n and the degree sequence are sort by vertex numbers.
a) $d_{in}=(0,1,2,3), d_{out}=(2,2,1,1)$
b) $d_{in}=(2,2,1), d_{out}=(2,2,1)$
c) $d_{in}=(1,1,2,3,3), d_{out}=(2,2,3, 1,2)$
I want to find a nice way instead of drawing graph.
for (C):

Your problem (in its general form) was solved by Péter L. Erdős, István Miklós and Zoltán Toroczkai in this quite recent paper (arXiv version). To quote:
I hope this helps $\ddot\smile$
Edit: Here is the solution you sought.
(a) This example can be easily drawn. If you want to use the above theorem then the reduction could be as follows:
\begin{align} ((1,1,2,2),(3,2,1,0)) &\leadsto ((1,1,2,0),(2,1,1,0)) \leadsto ((1,1,2),(2,1,1))\\ &\leadsto ((1,1,0),(1,0,1)) \leadsto ((1,0,1),(1,1,0)) \\ &\leadsto ((1,0,0),(0,1,0)) \leadsto ((0,1),(1,0)) \\ &\leadsto ((0,0),(0,0)) \leadsto ((),()) \end{align}
Surely the empty sequence is bigraphical, so the example is bigraphical, but one could stop earlier at $((1,1,2),(2,1,1))$ which is easy enough.
(b) This sequence is not bigraphical. You can observe this as both vertices of out-degree two require two neighbors; that means the third vertex has to receive an edge from both of them, but its in-degree is only one. Using the above theorem you get reduction as follows:
\begin{align} ((2,2,1),(2,2,1)) &\leadsto ((2,2,0),(1,2,1)) \leadsto ((2,0,2),(2,1,1)) \\ & \leadsto ((2,0,0),(1,0,1)) \leadsto ((2,0),(1,1)) \end{align}
and the last sequence is not bigraphical because we disallow loops.
(c) This example also can be drawn (as you did), so the sequence is bigraphical. To give you a reduction using the above theorem:
\begin{align} ((2,1,3,2,2),(3,3,2,1,1)) &\leadsto ((2,1,3,2,0),(2,2,2,1,1)) \leadsto ((2,1,2,0,3),(2,2,1,1,2)) \\ & \leadsto ((2,1,2,0,0),(1,1,0,1,2)) \leadsto ((0,2,1,0,2),(2,1,1,1,0)) \\ & \leadsto ((0,2,1,0,0),(1,0,1,1,0)) \leadsto ((1,0,0,2),(1,1,1,0)) \\ & \leadsto ((1,0,0,0),(0,0,1,0)) \leadsto ((0,1),(1,0)) \\ & \leadsto ((0,0),(0,0)) \leadsto ((),()) \end{align}
Summary: If you have only a few vertices, try to draw an example. When drawing an example or making a reduction: pick any vertex and sort the rest lexicographic order on $(d^-, d^+)$ (that is, first compare in-degrees) after removing any vertices with neither any in-degree or out-degree left. If you want, you can always swap the in-degrees and out-degrees of all vertices (intuitively it is like reversing all the edges).
Finally, if you are allowed to use on exam any theorems you want, and if you want to use the above theorem, be sure to include in your solution a proper reference: