C语言printf(““),浮点数打印保留有效位数,小数部分的四舍五入

您所在的位置:网站首页 c语言取小数点后几位数 C语言printf(““),浮点数打印保留有效位数,小数部分的四舍五入

C语言printf(““),浮点数打印保留有效位数,小数部分的四舍五入

2024-07-16 01:50| 来源: 网络整理| 查看: 265

1.printf("%3.0f",floatNum):不保留小数

说明:%3.0f表明待打印的浮点数(floatNum)至少占3个字符宽,且不带小数点和小数部分,整数部分至少占3个位宽;

注意:这里的3只代表整数部分至少占3位,舍弃小数点和小数点后面的部分

2.printf("%6.2f".floatNum):保留两位小数

说明:%6.2f 表明待打印的数(floatNum)至少占6个字符宽度(包括两位小数和一个小数点),且小数点后面有2位小数,小数点占一位,所以整数部分至少占3位。

注意:这里的6是待打印的数至少占据的字符宽度,包括两位小数(如果小数不够两位用0补位,例如100.1打印出来为100.10)和一个小数点,所以整数部分至少占3个字符宽度。

3.单精度实数的有效位数一般为7位,输出6位小数,超出有效位数输出就是错误的。

4.双精度数有效位数一般为16位,输出6位小数,超出有效位数可能截断或错误值。

5.关于保留小数点后有效位数四舍五入原则

 

#include int main() { printf("%f\n", 100.00); printf("%.0f\n", 100.00); printf("\n"); printf("%f\n", 100.30); printf("%.0f\n", 100.30); printf("\n"); printf("%f\n", 100.50); printf("%.0f\n", 100.50); printf("\n"); printf("%f\n", 100.53); printf("%.1f\n", 100.53); printf("\n"); printf("%f\n", 100.55); printf("%.1f\n", 100.55); printf("\n"); printf("%f\n", 100.56); printf("%.1f\n", 100.56); printf("\n"); printf("%f\n", 100.563); printf("%.2f\n", 100.563); printf("\n"); printf("%f\n", 100.565); printf("%.2f\n", 100.565); printf("\n"); printf("%f\n", 100.566); printf("%.2f\n", 100.566); printf("\n"); return 0; }

运行结果:

 

注意:从图中可以看出,保留0位小数的时候,只要小数点后第一位>=5,就可以进位,但是保留1位或者2位等等,保留小数的后一位要>5才可以进位,否则就舍去。

我是根据运行结果看到,有可以解释下的,请留言,谢谢!  



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3