## Golfscript, 27 characters

    " "9*"*"9,{n\.4$>\.+)"0"*}%

The resulting tree looks like this:

             *
             0
            000
           00000
          0000000
         000000000
        00000000000
       0000000000000
      000000000000000
     00000000000000000

A version which uses the height parameter only once is one character longer:

    9." "*"*"@,{n\.4$>\.+)"0"*}%

And to read the height from stdin (with input "10" to generate the example tree), we have to use one additional character for a total of 29:

    ~(." "*"*"@,{n\.4$>\.+)"0"*}%