(C++)double型的数据,如何保留小数点后四位?

比如, 现有一个变量double a = 13.45656789,我希望保留小数点后四位,

并将值保存到double b;让 b = 13.4566;

怎么才能做到?

如果要用到什么库的话,#include 什么也请加上..

谢谢!!
不要cout...的,我不是希望输出,而是希望把数据保存到另一个变量

以下为代码:

#include <math.h> 

double a = 13.45656789; 

double b; 

b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小数点后四位*/

扩展资料:

编译 & 执行 C++ 程序方法:

1、打开vs2010,选择"visual c++开发设置",然后点击"启动Visual Studio"。

2、"Visual Studio"选择默认环境设置。

3、进入"Visual Studio"后点击新建项目。

4、在弹出窗口选择 Visual C++标签下的空项目,输入名称以及保存位置。

5、在左侧的"解决方案资源管理器"中,选择"源文件"右击,然后选择"添加"->"新建项"。

6、在弹出窗口中,选择"C++文件(.cpp)",输入文件名称,单击"添加"。

7、现在输入具体的代码,例如输入简单的Hello World程序。

8、依次单击"调试"->"开始执行(不调试)"或按Ctrl+F5开始运行。

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-01

    在计算时,可以使用floor函数+0.5来实现四舍五入。

    例如:

    double a = 13.45656789;
    double b;
    b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小数点后四位*/

    在输出时,直接使用printf格式输出实现保留小数点后四位。

    例如:

    double a = 13.45656789;
    printf("%.4f",a);    /*保留小数点后四位*/

本回答被网友采纳
第2个回答  推荐于2017-09-25
四舍五入 保留四位小数

#include <math.h>

double a = 13.45656789;
double b;

b = floor(a * 10000.000f + 0.5) / 10000.000f; /*保留小数点后四位*/本回答被提问者采纳
第3个回答  2009-03-11
#include<iostream>

cout<<setprecision(6)<<a<<endl;
这就行了
第4个回答  2019-10-14
floor(value)+floor((value - floor(value)) * 10000+ 0.5) / 10000; 防止double数据太大,乘以10000后溢出;
相似回答