well depends on how much c++ you know and what your interested in, here's a moderatly difficult mathematical problem(quite useful as well).
[edit] the more i think about it the more i think that'd be too hard so can you tell us what sort of stuff you know and are interested in[/edit]
create a class that has the ability to hold a number totally accuratly(you'll need to find a way to handle irrationals) give it some operators like +,-,*,/,^n (n posotive integer), then using this class write a program to solve n'th degree polynomial equations to a specified precision. im not sure how old you are so i dont know if thats past your mathematical abilities or not.
have a look at some past problems on
www.topcoder.com theres lots of easy and hard stuff there.