None of the above.
If my execution block only has one line (even if it's a huge for statement) then I don't use braces, but I do indent it, similar to #3
if (num > 3)
print "num is greater than 3";
else
print "num is not greater than 3";
An example with multiple statements that do not need curly braces:
if (num > 3)
for (int i = 0; i < 100)
print i + "\n";
else
print "booya!";
That said, Jon Skeet's response in this question is the best