C++浮点数的部分输出格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++浮点数的部分输出格式相关的知识,希望对你有一定的参考价值。

/*关于浮点数的格式*/  
#include <iostream.h>   
void main()   
{   
float f=2.0/3.0,f1=0.000000001,f2=-9.9;   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl; //正常输出   
cout.setf(ios::showpos); //强制在正数前加+号   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout.unsetf(ios::showpos); //取消正数前加+号   
cout.setf(ios::showpoint); //强制显示小数点后的无效0   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout.unsetf(ios::showpoint); //取消显示小数点后的无效0   
cout.setf(ios::scientific); //科学记数法   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout.unsetf(ios::scientific); //取消科学记数法   
cout.setf(ios::fixed); //按点输出显示   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout.unsetf(ios::fixed); //取消按点输出显示   
cout.precision(18); //精度为18,正常为6   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout.precision(6); //精度恢复为6   
}   
操纵算子:   
/*关于浮点数的格式*/  
#include <iomanip.h>   
void main()   
{   
float f=2.0/3.0,f1=0.000000001,f2=-9.9;   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl; //正常输出   
cout<<setiosflags(ios::showpos); //强制在正数前加+号   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout<<resetiosflags(ios::showpos); //取消正数前加+号   
cout<<setiosflags(ios::showpoint); //强制显示小数点后的无效0   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout<<resetiosflags(ios::showpoint); //取消显示小数点后的无效0   
cout<<setiosflags(ios::scientific); //科学记数法   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout<<resetiosflags(ios::scientific); //取消科学记数法   
cout<<setiosflags(ios::fixed); //按点输出显示   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout<<resetiosflags(ios::fixed); //取消按点输出显示   
cout<<setprecision(18); //精度为18,正常为6   
cout<<f<<‘ ‘<<f1<<‘ ‘<<f2<<endl;   
cout<<setprecision(6); //精度恢复为6   
}  

以上是关于C++浮点数的部分输出格式的主要内容,如果未能解决你的问题,请参考以下文章

c++中如何输出保留三位小数的浮点数

C++如何用cout控制浮点数输出的位数?

怎么精确提取一个浮点数的小数部分?

C++ 浮点数精度判定

java里如何在输出浮点数小数部分为0时自动将小数点和小数部分隐藏

内部格式为 GL_RGBA8 的纹理在片段着色器中显示为浮点数