C语言里,实型变量double和float 的输出占位符,%lf和%f为什么在printf输出后都

C语言里,实型变量double和float 的输出占位符,%lf和%f为什么在printf输出后都是六位小数,double不是精度更高吗?

double精度更高,是指它存储的小数位数更多,但是输出默认都是6位小数,如果你想输出更多小数,可以自己控制,比如 “%.10lf” 就输出10位小数,望采纳
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-25
printf() 只会看到双精度数,printf 的 %f 格式总是得到 double,所以在 printf() 中使用 %f 跟 %lf 的输出显示效果是一样的。但是对于变量来说,double 类型比 float类型的精度要高。本回答被网友采纳
第2个回答  2015-04-25
默认保留6位小数。追问

那double所谓的双精度是怎么回事

追答

double是8位 float是4位。

相似回答