You need to be looking at two switches, a 48 port and a 24 port, for the users machines. These should ideally have gigabit ports as well, but it is not necessary to have anything more than 10/100Mbps for the users.
One router should be enough, with as fast an internet connection as you can get, (or afford) is the basic answer. You could go for more than one connection, and split the users accross these, and manually switch them all to one, if the other fails.
Most people who use this type of place are doing web browsing, and checking e-mails, which are not particularly bandwidth hungry. I would discourage heavy downloads, as this will sap all the bandwidth.
You may want to consider putting some bandwidth shaping on the router, if you go for Cisco, you can use the policy maps to allocate small amounts of bandwidth to peer-to-peer sharing and the like.
Management of the bandwidth is key to offering a good service for most of your customers.