设计一个银行账户(Account)类,包含户名、帐号以及当前余额属性,可完成开户、存款、取款和查询余额等行为

#include<iostream>
#include<conio.h>      //getch()要用到此头文件
#include<stdlib.h>     //system("cls")清屏函数用到此头文件
#include<string.h>
#pragma warning(disable:4996)
using namespace std;
class Account
{
public:
    Account(char name[], long num, float amount);   //类的有参构造函数
    Account();                        //类的无参构造函数
    void deposit(float amount);     //往账户中存款
    int withdraw(float amount);     //从账户中取款
    float getBalance();              //查询余额
private:
    char mName[20];                  //银行账户的户名
    long mSN;                            //本账户的帐号
    float mBalance;                  //本账户当前的余额
};
//有参构造函数的实现
Account::Account(char name[], long num, float amount)
{
    strcpy(mName, name);
    mSN = num;
    mBalance = amount;
}
//类的无参构造函数(程序填空)
Account::Account()
{
    cout << "无参构造被调用" << endl;
}
//存款
void Account::deposit(float amount)
{
    mBalance = mBalance + amount;
}
//取款,考虑透支情况(程序填空)
int Account::withdraw(float amount)
{
    while (amount >mBalance)
    {
        return 0;
    }
    mBalance = mBalance - amount;
    return 1;
}
//查询余额(程序填空)
float Account::getBalance()
{
    cin.get();
    return mBalance;
}
//主菜单
void menu(void)
{
    system("cls");       //清屏
    cout << "-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*" << endl;
    cout << "-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*" << endl;
    cout << "       简单银行帐户系统" << endl << endl;
    cout << "1.存款 " << endl;
    cout << "2:取款" << endl;
    cout << "3:查询余额 " << endl;
    cout << "4:退出 " << endl << endl;
    cout << "-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*" << endl;
    cout << "-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*" << endl;
    cout << endl << endl << endl;
}
int main()
{
    int cho, m;
    char name[20];
    long num;
    float amount;
    cout << "请输入开户信息:" << endl << endl;
    cout << "姓名:";
    cin >> name;
    cout << "帐号:";
    cin >> num;
    cout << "存款金额:";
    cin >> amount;
    Account p(name, num, amount);     //定义银行账户类对象
    while (1)
    {
        menu();
        do
        {
            cout << "请输入选择:" << endl;
            cin >> cho;
        } while (cho < 1 || cho>4);
        switch (cho)
        {
        case 1:    cout << "存款金额:";
            cin >> amount;
            p.deposit(amount);
            break;
        case 2: cout << "取款金额:";
            cin >> amount;
            m = p.withdraw(amount);
            if (m == 0)
                cout << "透支!" << endl;
            else
                cout << "取款成功!" << endl;
            cin.get();
            break;
        case 3: cout << "余额为:" << p.getBalance() << endl;
            break;
        case 4:    return 0;
        }
        cout << endl << "敲回车继续!" << endl;
        cin.sync();   //清空输入缓冲区的内容  
        cin.get();    //从指定的输入流中提取一个字符,防止屏幕一闪而过
    }
}
 

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值