银行

原创 2013年12月03日 16:49:45
/*
将任务2中的代码,涉及密码、帐户的函数放在一个文件中,完成各项功能的函数放在另一个文件中,main函放也单独一个文件。

参考解答:

main.cpp——称为测试文件,是程序执行开始的文件,用于“总控”程序的执行

*/

#include<iostream>
using namespace std;
int password = 123456;
double balance = 10000;

bool pass();
void work();

int main()
{
    cout<<"曹家银行欢迎您光临……"<<endl;
    if(pass())
        work();
    else
        cout<<"不要着急,想好了再输入……"<<endl;
    return 0;
}
/*
work.cpp(文件名由你取)——包含完成各项银行业务的函数(术语中也称模块)
*/

#include<iostream>
using namespace std;//本文件中的涉及输入输出,写包含文件与指定命名空间有必要。
extern double balance; //指出这个全局变量来自别的文件,是外部全局变量

void showbalance();
void drawmoney();
void deposit();
void transferAccounts();
void updatePassword();

//处理业务
void work()
{
    char cChoice;
    bool bExit = false;
    do
    {
        cout<<endl<<"*  您可以办理下面的业务:"<<endl;
        cout<<"*  1.查询   2.取款  3.存款  4.转账  5.改密  0.退出"<<endl;
        cout<<"*  请输入(0-5):";
        cin>>cChoice;
        switch(cChoice)
        {
        case '1':
            showbalance();
            break;
        case '2':
            drawmoney();
            break;
        case '3':
            deposit();
            break;
        case '4':
            transferAccounts();
            break;
        case '5':
            updatePassword();
            break;
        case '0':
            cout<<"欢迎您下次来存款. "<<endl;
            bExit=true;
        }
    }
    while(!bExit);
    return;
}

//查询余额
void showbalance()
{
    cout<<"您的当前余额是:"<<balance<<"元"<<endl;
}

//取款
void drawmoney()
{
    double money;

    cout << "请输入取款金额:";
    cin >> money;
    //下面不计利息了,从现在起,我们的银行只提供银行卡业务,先不计息的
    if(money<=balance)
    {
        balance-=money; //取款成功
        cout<<"取款后,您的余额是:"<<balance<<"元。"<<endl;
    }
    else
    {
        cout<<"您的余额不足,取款失败。"<<endl;
    }

}
//存款
void deposit()
{
    double money;
    cout << "请输入存款金额:";
    cin >> money;
    //下面不计利息了,从现在起,我们的银行只提供银行卡业务,是定期统一计息的
    balance+=money; //取款成功
    cout<<"存款后,您的余额是:"<<balance<<"元。"<<endl;
}

//转帐
void transferAccounts()
{
    double money;
    int iAccount2;
    cout << "请输入转帐金额:";
    cin >> money;
    cout << "请输入对方帐户:";
    cin >> iAccount2; //应该判断对方帐户的有效性再转账,暂时不做,待以后改进

    if(money<=balance)
    {
        balance-=money; //取款成功
        //此处应该为对方帐户增加余额,暂时略
        cout<<"转给"<<iAccount2<<"后,您的余额是:"<<balance<<"元。"<<endl;
    }
    else
    {
        cout<<"您的余额不足,转账失败。"<<endl;
    }
}

/*
password.cpp——包含涉及密码的函数
*/

#include<iostream>
using namespace std;  //本文件中的涉及输入输出,写包含文件与指定命名空间有必要。
extern int password;  //指出这个全局变量来自别的文件,是外部全局变量

//检验密码
//返回值:通过-true; 不通过-false
bool pass()
{
    bool bPass=false;   //先假设不正确,直至正确后赋值为true
    int iPass;
    int num=1;
    do
    {
        cout<<"请输入密码";
        if(num>1)
            cout<<"(提示:这是第"<<num<<"次输入密码,三次不对将吞卡)";
        cin>>iPass;
        num++;
        if(iPass==password)
            bPass=true;
    }
    while(!bPass&&num<4);   //密码不正确且次数在允许范围内
    return bPass;  //密码正确为true,表示通过,反之……
}


void updatePassword()
{
    int p1,p2;
    cout << "请输入旧密码:";
    cin >> p1;
    if(p1!=password)
    {
        cout<<"旧密码输入不正确,不允许修改密码。"<<endl;
    }
    else
    {
        cout << "请输入新密码:";
        cin >> p1;
        cout << "请确认新密码:";
        cin >> p2;
        if(p1==p2)//两次输入相符
        {
            password=p1;
            cout<<"密码修改成功!"<<endl;
        }
        else
        {
            cout<<"两次输入不一致,密码修改失败。"<<endl;
        }
    }
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

小程序发展之银行贷款4种形式

银行贷款是指个人或企业向银行申请借款,银行根据国家政策以一定的利率将资金贷给借款人,而价款人要根据双方约定的期限向银行归还贷款和利息。不过,借款人要向银行提供担保、房屋抵押、或者收入证明、个人征信良好...

《黑马程序员》 银行业务调度系统回顾总结

在做银行业务调度系统这个题目的时候,我们是需要了解一下银行业务办理的流程的:    通常情况下是这样的,我们去银行取钱的时候,需要先去取号机器上取号(就相当于我们站在服务窗口前排队一样,只是有了取号机...

银行限额体系

银行限额体系       限额根据等级划分为系统级别、客户级别和账户级别。一般银行系统都是采取系统级别+客户级别组合或者系统级别+账户级别组合。 系统级为银行默认定义限额。一般设置在100w-50...

黑马程序员——银行业务调度系统

------- android培训、java培训、期待与您交流! ---------- 个人小心得: 1.       面向对象思维:先不用考虑具体实现,而是应该先对项目进行需求分析,掘出并提...

c++编写银行管理系统

4个头文件 #include "LinkList.h" class Bank { private: LinkList * list; int account_number; public: B...

Linux下C开发实用小技术、好代码总结 —— 银行项目

1 Linux下C语言中预定义的几个调试宏Linux几个调试宏__LINE__ __FILE__ __FUNCTION__ __TIME__ __DATA__这几个宏是编译器内置的,不是在哪个头文件...

国内银行卡BIN号(Bank Identification Number)速查简表

国内银行卡BIN号(Bank Identification Number)速查简表 银行名称 银行卡 卡BIN 中国工商银行 ...

黑马程序员_解读银行调度系统

------- android培训、java培训、期待与您交流! ---------- 银行业务调度系统 1)模拟实现银行业务调度系统逻辑,具体需求如下:  银行内有6个业务窗口,1 - 4号窗口为...

2010年辽工程序设计大赛参赛程序--银行业务管理程序

/******************************************************************************* 本程序特点: ...

黑马程序员----银行业务调度系统

黑马程序与------Android培训------银行业务调度系统
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)