C语言分数加法如何实现?

编写一个C语言程序,实现以下功能:
键盘输入一个分数加法表达式,格式为a/b+c/d,其中a、c为0-9的整数,b、d为1-9的整数。
计算上述分数加减法的结果sum。
使用标准输出语句打印出上述结果,结果
保留三位小数。
参考结果:
输入问题,格式为a/b+c/d:
1/2+3/4
您输入问题的答案是:1.250

请尽量给个简单版的,不要太复杂,谢谢!

【若有帮助,望给个采纳,谢谢!】

img


#include <stdio.h>
#include <stdlib.h>

int main()
{
    // 格式为a/b+c/d,其中a、c为0-9的整数,b、d为1-9的整数

    /*
    保留三位小数。
    参考结果:
    输入问题,格式为a/b+c/d:
    1/2+3/4
    您输入问题的答案是:1.250
    */

    int a, b, c, d;

    printf("请输入4个整数以空格隔开:");
    scanf_s("%d %d %d %d", &a, &b, &c, &d);

    double e = (double)a / b;
    double f = (double)c / d;

    printf("您输入问题的答案是:%.3f\n", e + f);

    system("Pause");
    return 0;
}

#include <stdio.h>
#include <stdlib.h>
int main()
{
    int a, b, c, d;
    char e;
    double sum;
    printf("输入问题,格式为a/b+c/d:\n");
    scanf("%d/%d%c%d/%d", &a, &b,&e, &c, &d);
    if(e=='+')
    {
        sum = (double)a / b + (double)c / d;
    }
    else if(e=='-')
    {
        sum = (double)a / b - (double)c / d;
    }
    printf("您输入问题的答案是:%.3f", sum);
    return 0;
}

#include <stdio.h>

int main() {
    int a, b, c, d;
    char op;

    printf("请输入一个分数加法表达式,格式为a/b+c/d:\n");
    scanf("%d/%d%c%d/%d", &a, &b, &op, &c, &d);

    int numerator, denominator;
    if (op == '+') {
        numerator = a*d + b*c;
        denominator = b*d;
    } else if (op == '-') {
        numerator = a*d - b*c;
        denominator = b*d;
    } else {
        printf("不支持的操作符:%c\n", op);
        return 1;
    }

    int integer = numerator / denominator;
    numerator %= denominator;

    printf("计算结果:%d", integer);
    if (numerator != 0) {
        printf(" %d/%d", numerator, denominator);
    }
    printf("\n");

    return 0;
}