setprecision(n)的運用
頭文件: #include <iomanip>
cout後面添加: <<setprecision(3)
//setprecision的意思為「設(shè)置精度」,括弧內(nèi)的數(shù)字自定。
//輸出採用『與<<連用的設(shè)置方式』,所以要包含該頭文件。
功能:
(1)浮點輸出中,setprecision(n)表示有效位數(shù)。
(2)定點輸出中(setiosflags(ios::fixed)),setprecision(n)表示小數(shù)點后數(shù)字位數(shù)。格式為
(3)指數(shù)形式輸出中(setiosflags(ios::scientific)),setprecision(n)表示小數(shù)位數(shù)。
(4)系統(tǒng)默認設(shè)置為setprecision(6)。
==================================
實例:
// 一、輸出保留小數(shù)點後3位
#include
<iostream>
#include <iomanip>
using namespace std;
int main()
{
float fn =
3.5004;
cout << setprecision(3) << setiosflags(ios::fixed
| ios::showpoint) //
灰色可省去,效果同。
<< fn
<< endl;
return 0;
}
// 二、輸出最多保留3位有效數(shù)字
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
float fn = 3.101;
cout << setprecision(3) << setiosflags(ios::showpoint) //
灰色添加,則後面補充零,直至滿足有效位數(shù),當(dāng)保留的有效數(shù)字恰好到個位數(shù)為止,則後面仍顯示小數(shù)點。
<< fn << endl;
return 0;
}
PS:
當(dāng)頭文件有#include
<iostream>時,setiosflags(ios::XXX)可以直接寫成XXX。
如:cout<<setiosflags(ios::flxed)
可直接寫成 cout<<fixed