c++固定位數(shù)輸出
無論是printf還是fixed等方案都會四舍五入,需要取精確位數(shù)方法和正常四舍五入方案:
int main() {
//c++20新特性
double num = 3.1415926535;
std::cout << std::format("{:.4f}", num) << std::endl; // 輸出: 3.1416(四舍五入)
//cout
std::cout << std::fixed << std::setprecision(4) << num << std::endl;
//printf
printf("%.4f\n", num); // 輸出: 3.1416(四舍五入)
//取精確位數(shù)
double truncated = std::floor(num * 10000) / 10000;
printf("%.4f\n", truncated); // 輸出: 3.1415(截斷)
return 0;
}

浙公網(wǎng)安備 33010602011771號