这里显示最后一句话错误,不知道哪错了

#include
using namespace std;
void show(double ()[5],int);
double addition(double,double);
double subtraction(double,double);
double mutiplication(double,double);
double divition(double,double);
void print_result(double(
)(double,double),double,double);
void print_result(double(ptrCalc)(double,double),double num1,double num2)
{
double result=ptrCalc(num1,num2);
cout<<"运算结果为:"<<result<<endl;
}
double addition(int num1,int num2)
{
return num1+num2;
}
double subtraction(int num1,int num2)
{
return num1-num2;
}
double mutiplication(int num1,int num2)
{
return num1*num2;
}
double divition(int num1,int num2)
{
if(num2==0)
{
cout<<"除数不能为零"<<endl;
return 0;
}
return num1/num2;
}
int main()
{
double (*ptrCalc)(double,double);
double num1,num2;
char op;
cout<<"请输入两个数:";
cin>>num1>>num2;
cout<<"请输入运算符:";
cin>>op;
switch(op)
{
case '+':ptrCalc=addition;
break;
case '-':ptrCalc=subtraction;
break;
case '
':ptrCalc=mutiplication;
break;
case '/':ptrCalc=divition;
break;
}
print_result(ptrCalc,num1,num2);
}

你不觉得你上面声明的代码和你定义的不一样嘛,你这个代码有点奇怪 会不会是你main函数是int类型的 最后没有return 0;所以才报错...

供参考:

#include<iostream>
using namespace std;
void   show(double (*)[5],int);//?????
double addition(double,double);
double subtraction(double,double);
double mutiplication(double,double);
double divition(double,double);
void   print_result(double(*)(double,double),double,double);

void print_result(double(ptrCalc)(double,double),double num1,double num2)
{
    double result=ptrCalc(num1,num2);
    cout<<"运算结果为:"<<result<<endl;
}
double addition(double num1,double num2)
{
    return num1+num2;
}
double subtraction(double num1,double num2)
{
    return num1-num2;
}
double mutiplication(double num1,double num2)
{
    return num1*num2;
}
double divition(double num1,double num2)
{
    if(num2==0)
    {
        cout<<"除数不能为零"<<endl;
        return 0;
    }
    return num1/num2;
}
int main()
{
    double (*ptrCalc)(double,double);
    double num1,num2;
    char op;
    cout<<"请输入两个数:";
    cin>>num1>>num2;
    cout<<"请输入运算符:";
    cin>>op;
    switch(op)
    {
          case '+':ptrCalc=addition;
                   break;
          case '-':ptrCalc=subtraction;
                   break;
          case '*':ptrCalc=mutiplication;
                   break;
          case '/':ptrCalc=divition;
                   break;
    }
    print_result(ptrCalc,num1,num2);
   
    return 0;
}