My guess is that your bike simply needs a tune-up.
A worn chain can indeed cause the problems you describe, and replacing a chain is fairly inexpensive, compared to other repairs to address this.
If a worn chain is left on a bike for too long, these problems can become permanent, requiring the replacement of drivetrain gears. How long was this going on before you brought the bike in?
Is your chain too loose? A chain at the incorrect tension can cause problems like this. A good
Also, proper shifting technique can go a long way towards helping this. Are you shifting before you need to change gears? Shifting under too heavy a load will cause the chain to skip on even the best of bikes.
The next step would be to give the bike a tune-up, focusing on adjusting the rear and front derailers (or the internal hub, if your bike has one). Also, performing normal maintenance like checking that your shifting cables are at the correct tension and that the drivetrain is clean and properly lubricated is a good idea.
(It's worth noting that cheaper bikes from big box stores can sometimes simply not be adjusted to run smoothly. If you have one of these "department store"/"big box" bikes, I wouldn't spend too much on tuning it.)