These are listed roughly in recommended order.
Codewars
Code in the website and submit your code to have it checked.
Edubits Challenges
Code in the website and submit your code to have it checked. Practice in
multiple languages (including C++). Nice range of problem difficulties.
Kattis Programming Challenges Code in the website and submit your code to have it checked. Practice in multiple languages (including C++). Nice range of problem difficulties.
Hackerearth coding practice
Code and test in browser. Leans towards more complex problems. Lots of
260 and beyond problems.
Codechef coding practice
Lots of problems, but not as well curated as some of the other sites.
Advent of Code
Annual set of programming challenges counting December 1–25. The
front page shows the most recent/current year's problems, but you can
also view
past events. This
reddit post has problems categorized
so that you can find say a list of all the problems involving working
with e.g. Grids or Boolean Logic.
Leetcode.com programming practice
Advanced practice. Even the Easy problems require CS260 knowledge.
Reddit Dailyprogrammer
Work on challenge problems proposed by other programmers. Check out solutions created by others.
Project Euler
Math-centric problems.
These resources are focused on programming competitions. They still have lots of programming puzzles, but they tend to emphasize problem solving more than basic programming practice.
US Coding Olympiad
You can make an account and then work your way up from easy problems
to hard.
UVA Online Judge
Big lists of problems. A recommended starting point is the category
called AOAPC II: Beginning Algorithm Contests.