c语言控制输出格式-小数点位数

10 篇文章 0 订阅
8 篇文章 0 订阅

控制小数位数就是通过输出格式说明符来规定的

printf(%m.nf)  表示打印至少m个字符宽度(包括整数、小数点和小数部分的位数),n位小数

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 <stdio.h>

int main()
{
    float f1=3.1415926;
    float f2=1234.1415926;
    float f3=124.1;
    printf("%3.4f\n", f1);
    printf("%3.4f\n", f2);
    printf("%3.4f\n", f3);
    printf("----------------\n");
    printf("(%m.nf) 打印至少m个字符宽度(包括小数点和小数部分的位数),打印n位小数");//
    printf("----------------\n");

    printf("%8.3f\n",3.1415926);//打印"   3.142" 一共8位,前面3个空格
    printf("%2.6f\n",3.1415926);//打印"3.141593"
    printf("%6.6f\n",3.1415926);//打印"3.141593" 至少打印2个字符和6个字符 在这没区别
    printf("%6.4f\n",3.1415926);//打印"3.1416"
    printf("%7.4f\n",3.1415926);//打印" 3.1416"
    printf("%8.4f\n",3.1415926);//打印"  3.1416" 前面打印两个空格
    printf("%2.9f\n",3.1415926);//打印"3.1415926000"
    printf("%2.9f\n",333.1415926);//打印"3.1415926000" 小数位补0

    return 0;
}

  • 65
    点赞
  • 220
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值