簡體   English   中英

小數點后加兩個零 output

[英]Adding two zeroes after decimal output

我已經查過了,我還沒有得到任何工作,但基本上我需要這段代碼:

#include <iostream>
#include <fstream>
#include <string>
#include <iomanip>

using namespace std;

int main()
{
  ifstream inFile;
  ofstream outFile;

  string firstName, lastName, department;
  double salary, bonus, taxes;
  double distance, timeTravel;
  int coffeeCups;
  double cupCost;
  double paycheck, aveSpeed, salesAmount;

  inFile.open("inData.txt");
  outFile.open("outData.txt");

  inFile >> firstName >> lastName >> department;
  inFile >> salary >> bonus >> taxes;
  inFile >> distance >> timeTravel;
  inFile >> coffeeCups >> cupCost;

  paycheck = salary + salary*(bonus/100) - ((salary+ salary*(bonus/100))*(taxes/100));
  aveSpeed = distance/timeTravel;
  salesAmount = coffeeCups * cupCost;

  outFile << "Name: " << firstName << " " << lastName << ", Department: " << department << endl;
 
  outFile << "Monthly gross salary: $" << salary << ", Monthly bonus: " << bonus << "%" << ", Taxes: " << taxes << "%" << endl;
 
  outFile << "Paycheck: $" << paycheck << endl << endl;
 
  outFile << "Distance traveled: " << distance << " miles, Traveling time: " << timeTravel << " hours" << endl;
 
  outFile << "Average speed: " << aveSpeed << " miles per hour" << endl << endl;

  outFile << "Number of coffee cups sold: " << coffeeCups << ", Cost: $" << cupCost << " per cup" << endl;
 
  outFile << "Sales amount = $" << salesAmount;

  inFile.close();
  outFile.close();
  
  return 0;
}

到 output 這個:

Name: Giselle Robinson, Department: Accounting
Monthly Gross Salary: $5600.00, Monthly Bonus: 5.00%, Taxes: 30.00%
Paycheck: $4116.00

Distance Traveled: 450.00 miles, Traveling Time: 9.00 hours
Average Speed: 50.00 miles per hour

Number of Coffee Cups Sold: 75, Cost: $1.50 per cup
Sales Amount = $112.50

但是相反,我得到了這個:

Name: Giselle Robinson, Department: Accounting
Monthly gross salary: $5600, Monthly bonus: 5%, Taxes: 30%
Paycheck: $4116

Distance traveled: 450 miles, Traveling time: 9 hours
Average speed: 50 miles per hour

Number of coffee cups sold: 75, Cost: $1.5 per cup
Sales amount = $112.5
// Add this before you start writing to the file
outFile << std::fixed << std::setprecision(2) << std::setfill('0');

// Your original output code below
outFile << "Name: " << firstName << " " << lastName << ", Department: " << department << endl;
...

信用https://stackoverflow.com/a/15327758/10808581

這是一些示例代碼; 我希望你會發現它有用。

   stringstream ssdd;
   ssdd.str("");
   double aa=243.765;

   ssdd << "------------" << std::endl;
   ssdd << std::fixed << std::setprecision(2) << aa << std::endl; 
   ssdd << std::fixed << std::setprecision(3) << aa << std::endl;
   ssdd << std::fixed << std::setprecision(4) << aa << std::endl;
   std::cout << ssdd.str();
   std::cout << "------------";

Output 是:

------------
243.76
243.765
243.7650
------------

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM