It could be the starter, battery, or battery cables. Just to clarify a previous statement, since it takes less power for lights and accessories than it does to start the car, all of those things could power on even if you had a bad battery, bad battery cable, or too poor of contact between the battery cable and battery post (usually from corrosion).
Autozone will test batteries for free, so that might be a good first try. They'll test starters too, but that takes a lot more work to remove.
I'd at least start with looking at the battery cables and battery posts. Make sure nothing looks amiss (torn cable, corrosion, loose connection, etc.). If everything looks right, then try fully charging the battery and then taking it up to Autozone to test it. Sometimes a not fully charged battery won't pass their test, and you'll have to let them charge it for a while in order to conduct a proper test.
The only other thing I can think of is that there could be a problem with the alternator (although much less likely than the previous potential problems). If you fully charged the battery, and the car started great for a while and then slowly developed problems with starting, then there's the possibility that the alternator isn't providing enough power to run everything and charge the battery fully.