Player A wins the trivial *n*=1 case by playing any non-zero number in (1,1).
For all even *n*, player B wins by using symmetry a la a horizontal mirror.
As Ben points out in the comments, if *n* = 3, player B can force a win.  I had a long demonstration written out, but I decided against it (if you want, I can put it in later).
Anyway, as for the general case, after a little searching, I found a paper called "A determinantal version of the Frobenius - König Theorem" by D. J. Hartfiel and Raphael Loewy, which can be purchased [here][1].<p>

The abstract, at least, says that given an *n* by *n* matrix *A* of, say, rational numbers, if the determinant is zero, then *A* must contain an *r* by *s* submatrix *B* such that *r* + *s* = *n* - *p*, and rank(*B*) ≤ p - 1 (no more than *p* - 1 linearly independent rows), for some positive integer *p*.  This means that if we have, say, a 5x5 matrix whose determinant is zero, then there exists a submatrix *B* in *A* such that *B* is:

 1. a 1x5, 2x4, 3x3, 4x2, or 5x1 matrix of 0s
 2. a 2x5, 3x4, 4x3, or 5x2 matrix whose rows are all scalar multiples of each other
 3. a 3x5, 4x4, or 5x3 matrix with no more than two linearly independent rows
 4. a 4x5 or 5x4 matrix with no more than three linearly independent rows
 5. a 5x5 matrix with no more than four linearly independent rows (duh)<br>

While it doesn't say so explicitly, I think that it's a biconditional, so if player B manages to get one of these in the matrix, then she will win.  However, even if it isn't biconditional, if player A can prevent any of those forming, he will win.<p>

Of these two, I believe it would be easier for player A to prevent any of these forming than it would be for player B to force one of these, but I haven't given that in particular a great deal of thought.  I hope this is helpful.

  [1]: http://www.informaworld.com/smpp/content~db=all~content=a779099931~frm=abslink