C语言中的%f和%lf搞不明白double d=12.123456789; printf("%12.9f",d);很精确的输出了12.123456789一个字不漏但问题是%f不是对应单精度的吗?不是只能保证6位小数位的吗?为啥这里能用%f输出9位小数。。。。。彻底搞晕了[解决办法]%f 浮点数(包括float和double)[解决办法]printf中,%f通杀单精度和双精度在scanf中,%f和%lf才有区别[解决办法]