define your idea of "cheap"!
For example, .com is already cheap at $8-11 per year (most registrars offer this price), so if you want a few .coms you can buy them from any regsitrar.
Now, if you mean cheaper than $8-9 per year then I'm afraid you won't find .com (and no .net / .org either) for cheaper than this, so you'll have to settle for other extensions (.xyz is usually around $1, and then there are other extensions like .life / .cyou / .work / .club, etc that are also cheap but when renewal comes up you'll pay so much that it hurts. For example, last year I purchased a .store domain from Namecheap because they were running a promotion on Black Friday and the domain was only $4.99 IIRC, and so I rushed and purchased it because it fit the site I was having in mind perfectly, but when the renewal was up last month the cost was $49,95. Lucky me that I never managed to do anything with that domain all along so I simply let it expire, otherwise I would have paid $50 and would have hated it. So, you need to be careful with offers that are cheap now, because most of them will charge you insane fees on renewal.)
Anyway, you can use Namesilo (this is my preferred registrar, and you can find several extensions at, or around $2 if you don't need .com / .net / .org)