I've had a sore throat for 3 weeks now. It's a sharp pain down around the center. What could it be? Throat cancer? I'm 20 and have smoked for 2 years.

Unlikely. It is unlikely cancer. Cancer usually not painful, until very late stages, allergies or gerd are more likely to cause persistent sore throat in your age group. Check with you doctor. If it is due to gerd, than in a long run in number of years it might cause esophageal cancer unless well controlled on medication.
Not likely. It is probably a viral illness. Since it has been going on for 3 weeks, you shoujld see a health dare provider. You should stop smoking-it is bad for your health.