Hi,
There are lots of things you can do.
If you are intending to go to university, then it would be great if you could practice stuff that they are likely to ask you do in your assignments.
Do simple math programs that work out areas and volumes for various shapes and solids quadrilaterals, triangles, circles, spheres, cones, ellipsoids etc. Make sure you can process information from a file, store the info in a suitable STL container, and write output to another file.
Implement different sorting algorithms, research and comment on their efficiencies. What happens when you use them to process 1,000,000 items which may not necessarily be numbers?
Implement you own linked list, stacks and queues - make them bi-directional or double ended and circular where appropriate. Also various tree Data Structures such as Binary Tree, BTree (not the same as a Binary Tree) ADL Tree, Red Black Tree etc.
Text programs:
Write a program that records how many times
each word appears in a text file, and what position (word number) for each one. The file can be arbitrarily long: 10,000 words say, but should still work efficiently for a large file of 1,000,000 or more words. Do some statistics on the results. Allow the user to select n number of the most common or least common words. Draw graphs using asterisks of the selected words. Sort the words by their word count. Find the maximum and minimum distance between a selected word. Count the number of sentences, paragraphs and words in the file.
Non Graphical Geometry programs:
Implement a system that allows one to create objects in 2d or 3d space (3d is much harder). Support Points, Line Segments, Regular & Irregular polygons, Circles, Arcs, Ellipses, Elliptical Arcs etc. You don't have to draw them, just provide functions for creating them, and other functions to print out their details. Provide functions to calc distances and angles between points on different objects. For example distance & angle form the centre of this object to the mid point of this edge on that object. Support Tangents to circular objects - An Arc from the tangent point of this Arc to the tangent point of that Arc. Provide functions to move and rotate any object.
Graphical programs:
Choose a Framework that supports 2d graphics, such sfml or Qt say (There are others as well). Start out by drawing shapes, then have a go at animating them. Try bouncing things off walls, then add some gravity and spin.
Then there are various online programming problems like Project Euler
Note that the solution to these are not as obvious as one might first expect. They are often quite challenging.
There you go, that should keep you busy for a few
days years :+)