我的程序无法将帐户类型作为变量运行

My program can't run accountType as a variable

本文关键字:类型 变量 运行 程序 我的      更新时间:2023-10-16
#include <iostream>
#include <iomanip>
using namespace std;
int main ()
{
    int accountNumber;
    float minimumBalance, currentBalance;
    char accountType;
    const float SAVINGS_SERVICE_CHARGE = 10.00;
    const float CHECKING_SERVICE_CHARGE = 25.00;
    const float SAVINGS_INTEREST_RATE = 0.04;
    const float CHECKING_LOW_INTEREST_RATE = 0.03;
    const float CHECKING_AVERAGE_INTEREST_RATE = 0.05;
    cout <<"Please the details of your account"<< endl;
    cin >> accountNumber,accountType,minimumBalance,currentBalance;
    switch (accountType){
        case 's':
        case 'S':
            cout <<"Account number"<<accountNumber<<endl;
            cout <<fixed<<showpoint<<setprecision(2);
            cout <<"Account type:Savings"<<endl;
            cout <<"Minimum Balance: $"<<minimumBalance << endl;
            cout <<"Current Balance: $"<<currentBalance << endl;
            if (currentBalance < minimumBalance) {
                cout <<"Service Fee:$"<<SAVINGS_SERVICE_CHARGE<<endl;}
            else {
                cout <<"Interest Earned:$"<<currentBalance * SAVINGS_INTEREST_RATE    << "at" << SAVINGS_INTEREST_RATE*100<<"p%.a"<<endl;
            }
            break;
        case 'c':
        case 'C':
            cout <<"Account number"<<accountNumber<<endl;
            cout <<fixed<<showpoint<<setprecision(2);
            cout <<"Account type:Checking"<<endl;
            cout <<"Minimum Balance:$"<<minimumBalance<<endl;
            cout <<"Current Balance:$"<<currentBalance<<endl;
            if (currentBalance < minimumBalance) {
                cout <<"Service fee:$"<<CHECKING_SERVICE_CHARGE<<endl;}
            else if (currentBalance <= (minimumBalance+5000.00)){
                cout <<"Interest Earned:$"<<currentBalance * CHECKING_LOW_INTEREST_RATE <<"at"<<CHECKING_LOW_INTEREST_RATE*100 <<"%p.a"<<endl;
            }else {
                cout <<"Interest Earned:$"<<currentBalance *      CHECKING_AVERAGE_INTEREST_RATE<< "at"<< CHECKING_AVERAGE_INTEREST_RATE*100     <<"%p.a"<<endl;
            }
            break;
        default:
            cout <<"ERROR"<<endl;
            return 1;
            break;
    }
    system ("pause");
    return 0;
}

我的程序无法将 accountType 读取为变量。我应该怎么做才能让它作为变量运行?请告诉我该怎么做,我的错误是什么以及如何使其工作。

正如评论已经告诉的那样

cin >> accountNumber,accountType,minimumBalance,currentBalance;

是错误的,因为您为多个变量获取一个输入,如果您希望正确,则应使用每个变量的>>运算符。

cin >> accountNumber >> accountType >> minimumBalance >> currentBalance;

等于

cin >> accountNumber;
cin >> acccountType;
...

在我看来,我也不会使用全局命名空间,但这肯定是另一个主题。