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

%f为什么可以表示整形,但%d就错了

为什么 printf("%f\n", result);要用%f,换成%d就错了,这不是整数么

提问者:慕粉15650034517 2016-07-02 15:33

个回答

  • 闲暇
    2016-07-03 11:28:33
    已采纳

    这个在c语言开头就会解释给你,比如int m=3,float m=3.0这个是计算机自动装换类型,要明白int是整数型即没有小数点,float是浮点型有小数点;反之若float m=3.1,int m是错误的,要用强制转换语句int  x=(int)m;

    现在解释:%f输出六位小数有无小数点皆可使用,与上文同理%d表示的整数型不能用来表示有小数点的数字;显然你的”result“是带有小数点,所以不能用%d

  • 慕粉15650034517
    2016-07-02 16:34:20

    前面定义DOBULE了

  • 慕粉15650034517
    2016-07-02 15:34:37

    #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);
        return 0;
    }