在c++中,有的時候要對輸出的double型或float型保留幾位小數,這時可以使用setflags(ios::fixed),不過要先包含有文件<iomainp>,具體如下
例:
#include<iomainp>
double d=3.12345; //輸出d並保留兩位小數
cout<<setflaf(ios::fixed)<<setprecision(2)<<d;
也可以寫成:cout<<setflaf(ios::fixed);
cout<<setprecision(2)<<d;
這兩種形式的效果是一樣的,不過都要明確函數setprecision( )中的參數,參數即精度,在本例中保留兩位小數,並且保留小數的時候是按照
四舍五入的方式實現的,本例中的輸出結果為:3.12 ;假如輸出的d要保留四位小數,可以這樣寫:
int n=4;
cout<<setflaf(ios::fixed)<<setprecision(n);
輸出結果為:3.1235 (四舍五入)
在沒有 setflaf(ios::fixed) 時,輸出格式是數據的有效位,如:cout<<setprecision(4)<<d;輸出結果為:3.123。保留四個有效位,會自動四舍五入。