c语言四舍五入问题

2025-02-12 01:23:09
推荐回答(3个)
回答1:

printf限定位数输出时是4舍5入。

double->float,是不会4舍5入的,直接丢弃尾部的参数。

#include 
#include
#include
using namespace std;

int main()
{
    printf("%lf\n",M_PI);
    printf("%.4lf\n",M_PI);
    printf("%.3lf\n",M_PI);
    return 0;
}

回答2:

除非数值超范围或者类型变了,不然不会出现四舍五入的

回答3:

要看你是以哪种方式保留和具体的编译器。