显示整数的正确结果

Display proper result of integers

本文关键字:结果 整数 显示      更新时间:2023-10-16

我有一个代码以这种形式显示结果:示例

  Amount:          10
  Total Amount:    200
  Tax:             30
  Net Balance:     2000

我希望显示结果(例如数学类型)从右侧开始,并在小数点后以 2 个零 (00) 开头。例

  Amount:           10.00
  Total Amount:    200.00
  Tax:              30.00
  Net Balance:    2000.00

我正在使用双整形,但实际上我不知道如何设置从右侧开始的结果金额,并带有序列以及点和零。

您可以从<iomanip>组合一些设置:

std::cout << std::fixed;   // formatting floating-point numbers
std::cout << std::setprecision(2); // number of floating-point digits
std::cout << std::setw(10);  // width of the whole output string
std::cout << std::right;  // padding to the right

只需使用

double v = 123.45;
printf("%5.2f",v);

指定所需的宽度(5)和精度(2)。

编辑:字段数被指定为精度部分中的宽度和位数,应在printf().后提及。看看下面的输出。

   double v = 123456.45;
   printf("%3.2fn",v);
   printf("%10.2fn",v);
   printf("%11.2fn",v);
   printf("%12.2fn",v);

输出:

123456.45
 123456.45
  123456.45
   123456.45

你需要做这样的事情:

std::cout.precision(2);
std::cout << "Tax:         " << std::setw(8) << std::fixed << float(30) << std::endl;
std::cout << "Net balance: "<< std::setw(8) << std::fixed << float(2000) << std::endl;