00问答网
所有问题
c语言printf输出float数据的问题
这个结果是如何得出的?
可以的话,解释的简单一点
谢谢
举报该问题
其他回答
第1个回答 推荐于2017-12-16
printf输出实型数据的时候,%f默认输出,实型数据的小数位数是6位
%x是用于,以十六进制形式,输出整数
而这里,num是实数,所以类型不匹配,输出0
追问
我不理解的是第一行最后两个,还有第二行中间两个
%f 输出了0.000000
%x 输出了40240000
我也觉得应该是10.000000和0
本回答被网友采纳
第2个回答 2015-01-19
%f是对应这个数为十进制实数输出,所以是10,默认小数点6位,
%x是把他认为是十六进数,10就是00010000,而整数部分长度默认是3位还是4位,反正那个1是没输出去,而在%x时,对那个数据进行了处理,使得之后的%f 不是输10.0了,而是输出变了很多又转回单精实型的一个数本回答被提问者采纳
第3个回答 2015-01-19
这个问题有点大了,建议你上网去搜一下浮点数的格式
相似回答
大家正在搜
相关问题
C语言中printf输出float和double都用%f么(...
C语言float类型储存和printf输出问题
c语言printf输出格式问题
C语言printf()按指定精度输出float、double...
C语言里面float数据用printf(“%d”)输出的问题
c语言中,float a=2.1;printf("%f",a...
C语言中printf输出float和double都用%f么(...
c语言中声明和printf输出不一致,比如声明的是int,输...