我應該讓用戶輸入他們的購買價格來找出運費。我遇到的問題是,如果我輸入高於1,000美元的任何值,運輸價值將始終爲8美元。C++ if else語句不顯示正確的值
#include "stdafx.h"
#include <iostream>
#include <iomanip>
#include <string>
using namespace std;
void main()
{
double saleAmount, shipping = 0;
cout << "Enter a purchase amount to find out your shipping charges." << endl;
cout << "Please enter the amount of your purchase: $" << endl; cin >> saleAmount;
if (saleAmount > 5,000.00)
{
shipping = 20.00;
}
else if (saleAmount > 1,000.00)
{
shipping = 15.00;
}
這是它不承認10.00美元以上的航運。如果我在控制檯應用上輸入1500,它總是會告訴我運費是10美元。超過5000美元的任何價值也是如此。我試圖看看有什麼問題,但在我的生活中找不到它。
else if (saleAmount > 500.00)
{
shipping = 10.00;
}
else if (saleAmount > 250.00)
{
shipping = 8.00;
}
else
{
shipping = 0.00;
}
if (shipping == 0.00)
{
cout << "Error incorrect input" << endl;
}
else
{
cout << "The shipping charge on a purchase of $ " << saleAmount << " is $" << shipping << endl;
}
}
您不能在C中輸入逗號。 – Barmar
數字不包含逗號','。 – Xufox
來自C++的FWIW 14 [可選單引號(')可能作爲分隔符插入數字之間,它們被編譯器忽略。](http://en.cppreference.com/w/cpp/language/ integer_literal) –