c++中怎么输出小数
2022-12-14 · 百度认证:北京惠企网络技术有限公司官方账号
上面的代码是需要头文件#include<iomanip> 的,setprecision函数是指设置输出的精度,例如:float a=2017.666; cout<<setprecision(5)<<a;将会输出2017.7**(注意:这里会四舍五入)
如果setprecision里的参数小于整数位数,将以指数形式输出。
例如: float a=123.666;cout<<setprecision(2)<<a;将输出1.2e+002。
setiosflags(ios::fixed)是指以固定的浮点显示,当setiosflags(ios::fixed)和setprecision(n)两个一起用时就标识保留n为小数输出。这里还需注意,每次输出只设置依次就可以了,因为这两份的作用范围是后续对象,而不是仅对后一个对象起作用。
扩展资料:
如何对c++中小数点位数进行控制:
使用 setprecision 函数
功能:控制输出流显示浮点数的数字个数,可以控制小数点右面的位数头文件: iomanip
例程:
#include <iostream>
#include <iomanip>
using namespace std;
int main( void )const double value = 12.3456789;cout << value << endl; 默认以6精度,
所以输出为 12.345cout << setprecision(4) << value << endl;
改成4精度,所以输出为12.35cout << setprecision(8) << value << endl; //
改成8精度,所以输出为12.345679
cout << fixed << setprecision(4) << value << endl; //
加了fixed意味着是固定点方式显示,所以这里的精度指的是小数位,输出为12.3457
cout << value << endl; // fixed和setprecision的作用还在,依然显示为
12.3457cout.unsetf( ios::fixed ); // 去掉了fixed,
所以精度恢复成整个数值的有效位数,显示为12.35
cout << value << endl;cout.precision( 6 ); // 恢复成原来的样子,输出为
12.3457cout << value << endl;