您的位置:首页 > 其它

第12周项目4银行系统的加强版

2014-11-16 12:44 295 查看
问题及代码:

/* 
*Copyright (c)2014,烟台大学计算机与控制工程学院 
*All rights reserved. 
*文件名称:bank2.cpp 
*作    者:单昕昕 
*完成日期:2014年11月16日 
*版 本 号:v1.0 
* 
*问题描述:一个简单的银行模拟系统
*程序输出:各项业务代码对应的业务处理情况。
*/  
#include <iostream>
using namespace std;
const long PASSWORD=123456;  //定义一个全局变量
bool password(long n);
void work();
long showbalance(long);
long drawmoney(long);
long deposit(long);
long transferAccounts(long);
long updatePassword(long);
int main()
{
    long n;
    cout<<"Attack on bank 欢迎您的光临~!"<<endl;
    cout << "请输入您的密码:" << endl;
    if(password(n))  //验证密码是否正确
    {
        work();
    }
    else  //密码必须正确才能进入系统哦
        cout<<"对不起,您输入的密码有误,请不要捉急,请仔细核实后再次登陆我们的系统~!"<<endl;
    cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
    return 0;
}
bool password(long n)  //查验密码功能做成一个bool函数
{
    int i=0;  //i表示可以输入密码的次数,现假定每位用户最多只能三次输入密码
    bool pass=false;  //先假设密码不正确,以便能够进入到do-while循环
    do
    {
        cin>>n;
        i++; //每输入一次密码,可输入的总次数就减少一次
        if(n==PASSWORD)
            pass=true;  //密码正确即为true
    }
    while (n!=PASSWORD&&i<3);  //密码输入不正确而且输入的总次数不足3次
    return (pass);
}
void work()  //办理业务的work函数
{
    cout<<"* 您可以办理以下的业务:"<<endl;
    cout<<"* 1.查询业务"<<endl;
    cout<<"* 2.取款业务"<<endl;
    cout<<"* 3.存款业务"<<endl;
    cout<<"* 4.转账业务"<<endl;
    cout<<"* 4.转账业务"<<endl;
    cout<<"* 5.修改密码"<<endl;
    cout<<"请输入0-5的业务代码:"<<endl;
    int t;
    long n,lm=33;
    while (cin>>t&&t!=0)  //只要输入不是0,就可以继续办理业务
    {
        switch(t)  //根据输入的业务代码进行处理
        {
        case 1:
            lm=showbalance(lm);  //调用余额显示函数
            break;
        case 2:
            lm=drawmoney(lm);
            break;
        case 3:
            lm=deposit(lm);
            break;
        case 4:
            lm=transferAccounts(lm);
            break;
        case 5:
            n=updatePassword(n);
            break;
        case 0:
            cout<<"您将会退出我们的系统~欢迎再次使用!"<<endl;  //输入为0时退出循环
            cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
            break;
        default :
            cout<<"请检查输入的业务代码(0-5),并重新输入"<<endl;
            cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
            break;
        }
    }
}
long showbalance(long lm)
{
    cout<<"您的账户余额为:"<<lm<<"元。"<<endl;
    cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
    cout<<"如需办理其他业务,请继续输入其他的业务代码。"<<endl;
    return (lm);
}
long drawmoney(long lm)
{
    long gm;
    cout<<"请您根据您的账户余额酌情取款~"<<endl;
    cout<<"请输入您的取款金额:"<<endl;
    cin>>gm;  //输入取款金额
    if(gm>lm)  //取款金额要比余额少才对嘛
        cout<<"不好意思,信息错误~请核实后再次输入~"<<endl;
    else
    {
        cout<<"取款成功~!请检查现额并拿好您的money~"<<endl;
        lm=lm-gm;  //账户余额=现有金额-取款金额
        cout<<"您的余额还有:"<<lm<<"元。"<<endl;
    }
    cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
    cout<<"如需办理其他业务,请继续输入其他的业务代码。"<<endl;
    return (lm);
}
long deposit(long lm)
{
    long dm;
    cout<<"请输入您要存入的金额:"<<endl;
    cin>>dm;  //输入存款金额
    if(dm<=0)  //存款金额必须大于0
        cout<<"输入错误!请检查并重新输入~"<<endl;
    else
    {
        lm=lm+dm;//账户余额=现有金额+存款金额
        cout<<"存款成功!"<<endl;
        cout<<"您的余额还有:"<<lm<<"元。"<<endl;
    }
    cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
    cout<<"如需办理其他业务,请继续输入其他的业务代码。"<<endl;
    return (lm);
}
long transferAccounts(long lm)
{
    long tm,num;
    cout<<"请输入目标账户的卡号:"<<endl;
    cin>>num;
    cout<<"请输入要转入该账户的金额:"<<endl;
    cin>>tm;
    if(tm>lm||tm<=0)  //转账金额要比余额少才对嘛
        cout<<"不好意思,信息错误~请核实后再次输入~"<<endl;
    else
    {
        lm=lm-tm;
        cout<<"转账成功~!"<<endl;
        cout<<"您的余额还有:"<<lm<<"元。"<<endl;
    }
    cout<<"谢谢您的使用~!O(∩_∩)O~"<<endl;
    cout<<"如需办理其他业务,请继续输入其他的业务代码。"<<endl;
    return (lm);
}
long updatePassword(long n)
{
    long n_1,n_2;
    cout << "请输入您的旧密码:" << endl;
    cin>>n;  //输入密码
    if(n==PASSWORD)  //验证密码是否正确
    {
        cout<<"请输入您的新密码:"<<endl;
        cin>>n_1;
        cout<<"请再次确认输入您的新密码:"<<endl;
        cin>>n_2;
        if(n_1==n_2)  //两次新密码输入要一致
        {
            n=n_1;  //将新密码覆盖旧密码
            cout<<"您的密码修改成功!"<<endl;
        }
        else
        {
            cout<<"两次新密码输入不一致,请核查。"<<endl;
        }
    }
    else  //密码必须正确才能进入系统哦
        cout<<"对不起,您输入的密码有误,请不要捉急,请仔细核实后再次登陆我们的系统~!"<<endl;
    return (n);
} 

运行结果:











知识点总结:

调用函数好多啊啊啊啊啊!!要晕死了!



学习心得:

写了两个小时就出来这么个玩意儿。。感觉还是有不少漏洞。。待我再学习学习吧。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: