此篇主要讲C++编程如何保留小数点后面的位数。
首先需要引用iomanip头文件,这是必要头文件。
以下共四种方法,本人建议第一种方法,也是最常用的方法,也重点讲第一种方法。
#include<iostream>
#include<iomanip>//必要头文件
using namespace std;
int main()
{
double sum;
sum=4.56789;
cout<<"方法一:保留两位小数"<<endl;
//第一种方法也是最常用的方法
cout<<fixed<<setprecision(2)<<sum<<endl;
cout<<"方法二:保留三位小数"<<endl;
cout.setf(ios::fixed);
cout<<setprecision(3)<<sum<<endl;
cout<<"方法三:保留四位小数"<<endl;
cout<<setiosflags(ios::fixed)<<setprecision(4)<<sum<<endl;
cout<<"方法四:保留六位小数"<<endl;
cout<<setprecision(6)<<sum<<endl;
return 0;
}
运行结果:
对于方法一,这里的fixed是指”write floating-point values in fixed-point notation”,用定点表示法表示浮点数!!
是为了用来消除科学计数法的。其实只要出现fixed,则后面都是以fixed输出。
fixed与setprecision(n)连用控制小数点后的位数,运用的只是定点数记数法。
当然如果只是普通的快速验证编程练习,可以选择方法四(馊主意)。如果是考试或者课设此方法不建议。其他方法就不一一讲解了。会用即可。当然由于C++编译器兼容C你也可以用C的方法输出。但此方法不太建议。破话了C++的完整性。显得奇奇怪怪。
如果对fixed不太理解的欢迎下方留言,小编将继续更贴。当然如果文章有错的也欢迎指出错误。