用c++四舍五入输出答案



在一次编程竞赛中,我得到了一项以这种方式打印输出的任务,但我无法找到正确的方法。我们如何在c++中做到这一点?假设我的输出存储在一个双变量中,并且我需要遵循这个模式或格式

如果输出应为0.0034567,则输出应为"3.457 3"。

如果输出应该是0.3034567,那么输出应该是"3.034 1"。

您可以使用trunc来截断到一定数量的数字,使用#包括<cmath>

double output = 0.0034567;
int count=0;
while (output<1)
{
    output *=10;
    count++;
}
output*=1000;
int modul =(int) output%10;
if (modul>=5)
    output++;
output /=1000;
output = trunc(1000 * output)/1000;
std::cout << output << " "  << count << endl;

相关内容

最新更新