小编Xut*_*tuh的帖子

Float, Double data types confusion in external functions (C)

The code below compiles alright:

#include <stdio.h>

double add(double summand1, double summand2)
{
    double sum;
    sum = summand1+summand2;
    return sum;
}

double subtract(double minuend, double subtrahend)
{
    double diff;
    diff = minuend-subtrahend;
    return diff;
}

int main()
{
    double a,b,c,d;
    printf("Enter Operand 1:\n");
    scanf("%d",&a);
    printf("Enter Operand 2:\n");
    scanf("%d",&b);
    // Add
    c = add(a,b);

    // Subtract
    d = subtract(a,b);

    printf("Sum: %.3f\n", c);
    printf("Difference: %.3f\n", d);

    return 0;
}
Run Code Online (Sandbox Code Playgroud)

However, when entering 5 and 5 the result is 0.000 (wrong) and 0.000 …

c double

2
推荐指数
1
解决办法
89
查看次数

标签 统计

c ×1

double ×1