用c语言编写2个数的加、减、乘、除法函数,要求: 1、从键盘输入2个数,以及要执行运算的运算符。 2、使用void指针调用对应的函数执行运算,输出结果。

用c语言编写2个数的加、减、乘、除法函数,要求:
1、从键盘输入2个数,以及要执行运算的运算符。
2、使用void指针调用对应的函数执行运算,输出结果。

#include <iostream>
using namespace std;

void addition(int a, int b) {
    cout << a << "+" << b << "=" << a + b << endl;
}

void subtraction(int a, int b) {
    cout << a << "-" << b << "=" << a - b << endl;
}

void multiplication(int a, int b) {
    cout << a << "*" << b << "=" << a * b << endl;
}

void division(int a, int b) {
    if (b != 0) {
        cout << a << "/" << b << "=" << (float)a / b << endl;
    }else{
        cout << "Error: divided by zero" << endl;
    }
}

int main() {
    int a, b;
    char op;
    void (*func)(int, int);

    cout << "Please input two numbers:" << endl;
    cin >> a >> b;

    cout << "Please input the operator:" << endl;
    cin >> op;

    switch (op) {
    case '+':
        func = addition;
        break;
    case '-':
        func = subtraction;
        break;
    case '*':
        func = multiplication;
        break;
    case '/':
        func = division;
        break;
    default:
        cout << "Invalid operator" << endl;
        return 0;
    }

    (*func)(a, b);

    return 0;
}