This code works as it is supposed to:#include<iostream>#include<cmath>#include<cstdlib>using namespace std;int main(){    char cAgain, type;    int x, y=0;    double addition(double num1, double num2), subtraction(double num1, double num2), division(double num1, double num2),         multiplication(double num1, double num2), exponential(double num1, double num2), num1, num2, total;    do    {        cout << How many operations would you like to do? << endl;        cin >> x;        if (x <= 0)        {            cout << Error: You must have 1 or more operations. << endl;        }        else        {            while (x != 0, x--)            {                y++;                cout << Enter in your <<y<<  operation. (First Number (+,-,*,/,^) Second Number) << endl;                cin >> num1 >> type >> num2;                switch (type)                {                case '+':                    total = addition(num1, num2);                    cout << num1 <<  +  << num2 << =  << total<< endl;                    break;                case'-':                    total = subtraction(num1, num2);                    cout << num1 <<  -  << num2 << =  << total<< endl;                    break;                case'/':                    total = division(num1, num2);                    cout << num1 <<  /  << num2 << =  << total<< endl;                    break;                case'*':                    total = multiplication(num1, num2);                    cout << num1 <<  *  << num2 << =  << total << endl;                    break;                case'^':                    total = exponential(num1, num2);                    cout << num1 <<  ^  << num2 << =  << total << endl;                    break;                }            }        }        cout << Would you like to run the program again.(Y/N) << endl;            cin >> cAgain;    } while (cAgain == 'Y' || cAgain == 'y');return 0;}double addition(double num1, double num2){    double total;    total = num1 + num2;    return (total);}double subtraction(double num1, double num2){    double total;    total = num1 - num2;    return (total);}double division(double num1, double num2){    double total;    total = num1 / num2;    return (total);}double multiplication(double num1, double num2){    double total;    total = num1 * num2;    return (total);}double exponential(double num1, double num2){    double total;    total = pow(num1,num2);    return (total);}It starts by asking for the number of operations to perform. You enter a number, such as 3. Then it asks you to enter in your operation, such as 5+5, which is 10. Then it asks for a second, such as 10^2, which is 100. Then it asks for a third, such as 100-10, which is 90. Then it asks if you'd like to start over.
Four-function and exponentiation console calculator
c++;beginner;calculator
There's a few issues here with c++ basics:using namespace stdusing namespace std;This is usually a code smell, generally speaking the only time you would really want to do thisis when you are making some small throwaway program for testing a concept or making an example (or similar).In that case the reduction in typing time actually has a positive ROI.But you don't want to do it in any production code because this pollutes the globalnamespace which is something you should try to avoid, any benefit from time saved typing isimmediately wiped out the first time your program breaks because a name conflict.See this StackOverflow question for more info on that.If the main purpose for doing this is to cut down typing std:: then you canselectively bring in just the names you need by doing:using std::cout;using std::cin;an so on. This cuts down on typing without the downside of polluting the global namespace.Function declarationsCurrently you have this line:double addition(double num1, double num2), subtraction(double num1, double num2), division(double num1, double num2),     multiplication(double num1, double num2), exponential(double num1, double num2), num1, num2, total;First of all, this line is way too many characters wide to be readable. But more importantly you are declaring some functions and some variables on the same line. This is very bad for readability. Some people only have one declaration per line, but at the very least don't have more than one type of thing being declared on the same line.The idiomatic c++ way to do function declarations is at the top of the file or in header files. Instead put the function declarations above main one per line:double addition(double num1, double num2);double subtraction(double num1, double num2);double division(double num1, double num2);double multiplication(double num1, double num2);double exponential(double num1, double num2);This way it's much clearer to the readers of your code which functions you are forward declaring.Unnecessary variablesIn each of the functions that computes the value of an expression you have the same structure:double addition(double num1, double num2){    double total;    total = num1 + num2;    return (total);}This can be simplified by just doing:double addition(double num1, double num2){    return num1 + num2;}The reduction in the number of lines of code is a win for readability.Improving the features of the programIn order to compute the expressions such as 5+5^2-10 with correct operator precedence you will need to implement a parser. When I last did something like this I implemented a recursive descent parser. Be warned that this can be difficult to implement.I would recommend reading: http://en.wikipedia.org/wiki/Recursive_descent_parserAnd looking into the Boost Spirit parser library.