In principle, maybe not. In practice, yes, they need a passport.
For a closed loop cruise (one which leaves and enters through the same port), a US citizen does not need a passport to re-enter the country. They do need you to present some sort of proof of identity and citizenship, such as a birth certificate or government issued ID.
That said however, it is highly likely that the passport will be needed in order to disembark from the ship at a port of call - and furthermore many cruise lines, in order to reduce their administrative load, will simply require all passengers to present a passport before boarding.
Specifically in the case of the Bahamas, a passport, passport card, or WHTI compliant drivers license is required for entry.
In the end, the best and most important thing to do is check with the cruise line, but it's most likely that the answer is going to be yes - especially if they have any intention of, y'know, getting off the boat. Which they should! In that case, they need passports, or, if they are residents of Michigan, New York, Vermont or Washington, they could get by with an Enhanced Driver's License.