问答详情
源自:3-1 运算符号是啥

关于double和int的算术运算问题

#include <stdio.h>
int main()
{
    int a,b,c,d;
    double result;
    a = 1;
    b = 2;
    c = 3;
    d = 4;
    result = a + b - c - d; 
    printf("%f\n", result);//这里把%f改成%d的结果变化怎么那么大?
    return 0;
}


提问者:qq_垨護吥棄_03359846 2017-05-24 22:42

个回答

  • qq_珍惜_33
    2017-06-14 16:42:53

    printf("%f\n", (int)result);//重新温习一下强制类型转换

  • Nil_大黄
    2017-05-25 09:32:06

    result是一个double型,%d会将double型隐式转换为int型,不过我也有一个问题,测试结果%d下result输出结果是0,为什么不是-4?