Draw an ASCII Checkerboard
J, 24 bytes

An anonymous function:

2 2&amp;$&amp;.&gt;@(' #'{~2|+/~@i.)


Usage:

   f =: 2 2&amp;$&amp;.&gt;@(' #'{~2|+/~@i.)
   f 4
+--+--+--+--+
|  |##|  |##|
|  |##|  |##|
+--+--+--+--+
|##|  |##|  |
|##|  |##|  |
+--+--+--+--+
|  |##|  |##|
|  |##|  |##|
+--+--+--+--+
|##|  |##|  |
|##|  |##|  |
+--+--+--+--+