My code Wont let me have more than 9 options if someone tries to choose 10 the program thinks 1 is the option and 0 is what it needs to convert. How can I get around this?
And to avoid to make another thread how do I multiply a number when it has an exponent. See Case 10
You're doing this as a do ... while loop. When an option is chosen, it meets the criteria, so it starts that loop over again. You don't have any way to get out of that loop.
You might think about whether do ... while is really what you want to do. If it is (though I'm not sure why), then you might try moving the while statement to after the switch, so that the switch, and thus all the conversions, are part of the loop.
Also, why the for (;;) statement? What is that doing for you?
And I agree with Pabloist. You need to change the char option to an int, and deal with quitting in another way. char only takes in the first character, which when you enter '10' will be the '1'. char ignores the '0' and then that is what is left in the stream to be converted. Having 'option' be an int, where they can enter 99 to quit, and adding that to your switch would be one way to deal with it.
When you change to an int you need to change all of your case statements to int's.
case '1' is equivalent to case 0x30, you need to make it case 1 and so forth.