Dude.l.. If it's a formal i'd recommend a euro shirt (french cuts) with the big collars. They may be a little more expensive but they are nice. Because you are wearing such a black suit u want to wear something brighter to provide contrast.
Don't wear white, everyone does that. Wear something like... light brown (if your skin is tanned), light pink, light blue is too businessy... umm... if you wear white don't wear plain white, wear a checkerd white. with tie, it's easy to mix and match.
actually, what's your skin color like, are u white (blonde hair blue eyes), mexican, asian, black, arab, italian... whats your ethnicity. it will help with me giveing u an idea of what to wear.