用函数指针对两数作四则运算.txt

来自「用函数指针做四则运算」· 文本 代码 · 共 50 行

TXT
50
字号
#include <stdio.h>
#include <math.h>

int AddNumber(double *res, double left, double right)
{
    *res = left+right;
    return 1;
}

int SubNumber(double *res, double left, double right)
{
    *res = left-right;
    return 1;
}
int MulNumber(double *res, double left, double right)
{
    *res = left*right;
    return 1;
}

int DivNumber(double *res, double left, double right)
{
    if (fabs(right) < 1e-10)
    {
        printf("DIV 0!\n");
        return 0;
    }
    *res = left/right;
    return 1;
}

int (*(EvaluateTable[4]))(double *, double, double) = {
    AddNumber, SubNumber, MulNumber, DivNumber
};

int main()
{
    double left, right, res;
    int i;
    while (scanf("%lf%lf", &left, &right) != EOF)
    {
        for (i=0; i<4; i++)
        {
            if ((EvaluateTable[i])(&res, left, right))
                printf("%lf\n", res);
        }
     }

    return 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?