There are 2 reasons hotels want your credit card at checkin:
1) Convenience for incidental charges. In addition to room service and in-room movies, you can charge all sorts of things to your room: parking, laundry, restaurant/bar charges, coffee/gift shop purchases. These sorts of things are normal and expected even on a prepaid rate. Collecting everyone's credit card means it's easy and convenient to bill to a room account.
2) Guarantee the hotel will be made whole for any damage/lost items. If you break a lamp, remove the TV, or hang your suit on the fire sprinkler, the hotel has at least a starting point to recover costs.