我正在尝试将我的最终答案舍入为2位小数,因此它是美元和美分。我是编码的新手,无法弄明白。我想在“你需要收费的金额”这一行中用“w”来围绕这里是我的代码:
#include <iostream>
using namespace std;
int main()
{
string Choice;
float x, w;
cout << "Please enter the amount needed." << endl;
cin >> x;
w = x/(1-0.0275);
cout << "The amount you need to charge is $"<< w << "." << endl;
return (0);
}
答案 0 :(得分:4)
根据此处的示例http://www.cplusplus.com/forum/beginner/3600/ 你可以用
cout << setprecision(2) << fixed << w << endl;
(fixed
是可选的)
您必须#include <iomanip>
正如Synxis所指出的,这仅适用于打印值,它不会更改w
所持有的值
答案 1 :(得分:2)
你总是可以将你的答案x
乘以100,然后除以100。
x = (int)(x*100+0.5f);
x = ( (float)(x) ) / 100.0;
答案 2 :(得分:1)
您可以将您的货币单位更改为“美分”,然后除以100以获得美元和mod 100以获得美分。
unsigned int money = 152; // USD $1.52
cout << "Money is: " << (money / 100) << "." << (money % 100) << "\n";
这可能更准确。在网上搜索“一切都知道浮点”。