关于C++中保留几位小数,以及是否四舍五入的方法
代码:
#include<iostream>
#include<iomanip> //输出流控制,setiosflags(ios::fixed),setprecision(n)的头文件
using namespace std;
int main()
{
double n = 50.26548;
printf("%.4f", n); cout << endl; //打印输出小数点后4位,会四舍五入
cout << setprecision(4) << n << endl;//输出4位有效数字,包括整数和小数部分,会四舍五入
cout << setiosflags(ios::fixed) << setprecision(4) << n << endl;//输出小数点后4位,会四舍五入,会影响后面的setprecision()输出
cout << setprecision(4) << n << endl;//受前面影响,只输出小数点后4位,而不再是包括整数部分的7位,会四舍五入
cout << setiosflags(ios::fixed) << setprecision(4)<<floor(n * 10000)/10000<< endl;//不会四舍五入,保留几位小数就乘和除10的几次方
system("pause");
return 0;
}
输出结果: