The iPhone's ability to write in plain C will help if you're planning on using any off-the-shelf libraries. Yes, you can do this with Android's NDK using JNI, but it's not nearly as seamless.
Also, if you're going to be using OpenGL, Android's OpenGL ES 1.1 implementation is 'not complete,' while iPhone claims a complete ES 1.1 implementation, with newer models (3GS, latest iPod) supporting ES 2.0.
Lastly, if you're doing a performance-intensive game, you may want to keep in mind that your Android code will run on top of Dalvik, while iPhone code will be compiled to binary. Hopefully, this won't be an issue, but I imagine it's not fun to realize that you'll have to port most of your physics and game logic to C using the NDK.
Again, I have no experience developing a legitimate game on either platform, so take my words with a grain of salt. And as an Android user myself, I'd love to see more games on the platform. Best of luck, and let us know what you choose!
However currently applications downloaded from the market must install to in-phone memory, not the SD card. This severely limits their size. Some apps alternatively just have a downloaded in the market that fetches the rest of the app onto the SD card when launched, but the user experience for that isn't great.
I'd wait until Android gets native market -> SD card capability. In the meantime, go for iPhone.
I'm biased toward the iPhone, though.