++ 标准输出如何控制小数点后位数
#include
#include
using namespace std;
int main( void )
{
const double value = 12.3456789;
cout << value << endl; // 默认以6精度,所以输出为 12.3457
cout << setprecision(4) << value << endl; // 改成4精度,所以输出为12.35
cout << setprecision(8) << value << endl; // 改成8精度,所以输出为12.345679
cout << fixed << setprecision(4) << value << endl; // 加了fixed意味着是固定点方式显示,所以这里的精度指的是小数位,输出为12.3457
cout << value << endl; // fixed和setprecision的作用还在,依然显示12.3457
cout.unsetf( ios::fixed ); // 去掉了fixed,所以精度恢复成整个数值的有效位数,显示为12.35
cout << value << endl;
cout.precision( 6 ); // 恢复成原来的样子,输出为12.3457
cout << value << endl;
}
double
a=12444.489583484;
CString
tmp;
tmp.Format("%7.4f",a);//保留小数点前7位,小数点后4位
若满意请及时采纳。谢谢
#include
#include
using namespace std;
int main()
{
double a = 1234.5678;
cout.setf(ios::fixed, ios::floatfield);
cout.precision(2);
cout << a << endl;
printf("%.2f\n", a);
}
%.5f小数点后面的就是 限定的小数位数 ~
float fA = 3.1415926f;
printf("%2f",fA);