为了账号安全,请及时绑定邮箱和手机立即绑定

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

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

正在回答

3 回答

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

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

0 回复 有任何疑惑可以回复我~
#1

慕粉15650034517 提问者

非常感谢!
2016-07-03 回复 有任何疑惑可以回复我~

前面定义DOBULE了

2 回复 有任何疑惑可以回复我~

#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;
}

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

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

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信