i agree with the others that every man should own a dark classic suit. There will be occassions(weddings, funerals etc) where a suit is required. You don't need to "break the bank" to get a good quality suit. Check out the sales at Sears, JC Penny, Filene's etc, shop the big discount clothing stores like Kohl's, K&G and Burlington Coat Factory. Another option would be to buy a nice pair of dress pants and then pick up a blazer at your local consignment or thrift store. Tuxedo rental is always an option.
As for prices(if that is a concern) he can rent a tux for the cruise for about what it would cost to by a decent pair of dress slacks and a nice shirt.- Basic tux rentals start at about $95.00 for a 7 day cruise.