c语言中% if和% f的区别

如题所述

c语言是%if对应double,%f对应float。scanf():“%lf”用于double类型,“%f”用于float类型printf():“%f”既可用于double类型,也可用于float类型,意思是指“保留6位小数”。

%f和%lf分别是float类型和double类型用于格式化输入输出时对应的格式符号。

其中:

float,单精度浮点型,对应%f。

double,双精度浮点型,对应%lf。

扩展资料

double使用注意事项

转换的基本规则是“按数据长度增加的方向进行转换”,以保证精度不降低。比如int型数据和long型数据进行相加或相减运算时,系统会先将int型数据转换成long型,然后再进行运算。这样的话运算结果的精度就不会降低。

在运算时,程序中所有的float型数据全部都会先转换成double型。即使只有一个float型数据,也会先转换成double型,然后再进行运算。为什么要这样呢?因为CPU在运算的时候有“字节对齐”的要求,这样运算的速度是最快的。

温馨提示:答案为网友推荐,仅供参考
相似回答