银行系统再编

来源:互联网 发布:普通摄像头改网络监控 编辑:程序博客网 时间:2024/06/10 07:11
#include <iostream>  #include <string.h>  #include <stdio.h>  #include <iomanip>  using namespace std;    //银行中最大的账户数量  #define MAXACCOUNTNUMBER 20000  //银行卡的开号初始值  #define INITNUMBER 10001    struct Account  {      long accNumber;   //卡号      char accName[20]; //户主      char accPwd[10];  //密码      double balance;   //余额      char flag[6];     //卡的状态  };int size=0;Account array[MAXACCOUNTNUMBER];  void work();void openAccount();void pid();void deposit();void withdrawal();void transfer();long autoCreament();void printAccount(Account acc);int main(){    int i;char username[20];char password[10];    cout<<"                +------------------------------------------+"<<endl;cout<<"                |                                          |"<<endl;cout<<"                |                                          |"<<endl;cout<<"                |        欢迎使用储蓄业务综合平台          |"<<endl;cout<<"                |                                          |"<<endl;cout<<"                |                                          |"<<endl;cout<<"                +------------------------------------------+"<<endl;for(i=0;i<3;i++){    cout<<"请输入用户名:";    cin>>username;    cout<<endl;        cout<<"请输入密码:";    cin>>password;    cout<<endl;    if(strcmp(username,"admin")==0&&strcmp(password,"admin")==0)      {        cout<<"输入正确,请选择业务前的序号"<<endl;        work();    }    else    {        if(i<2)        cout<<"用户名或密码输入错误,请重新输入!"<<endl;        else        {            cout<<"您已三次输入错误的用户名或密码,系统将自动退出!"<<endl;        }        }}return 0;}void work(){    int order;    cout<<"               +-------------------------------+"<<endl;    cout<<"               |-----1.开户-2.查询-3.存款------|"<<endl;    cout<<"               |-----4.取款-5.转账-6.退出------|"<<endl;    cout<<"               +-------------------------------+"<<endl;    cin>>order;    switch(order){    case 1:    openAccount();    break;    case 2:    pid();    break;    case 3:    deposit();    break;    case 4:    withdrawal();    break;    default:    break;    }}void openAccount()//开户{cout<<"请输入户主名:";      cin>>array[size].accName;      cout<<"请输入密码:";      cin>>array[size].accPwd;      cout<<"请输入初次存款金额:";      cin>>array[size].balance;      //..      strcpy(array[size].flag,"正常");      //写卡号      array[size].accNumber=autoCreament();      printAccount(array[size]);      size++;      cout<<"开户成功,按任意键返回"<<endl;      fflush(stdin);      getchar();}long autoCreament()  {      if(size==0){          return INITNUMBER;      }else{          return array[size-1].accNumber+1;      }  }void printAccount(Account acc)  {      cout<<"|----------------------------------------|"<<endl;      cout<<setiosflags(ios::left)<<"|"<<setw(8)<<"卡号"<<setw(8)<<"户主"<<setw(8)<<"密码"<<setw(8)<<"金额"<<setw(8)<<"状态"<<"|"<<endl;      cout<<setiosflags(ios::left)<<"+----------------------------------------+"<<endl;      cout<<setiosflags(ios::left)<<"|"<<setw(8)<<acc.accNumber<<setw(8)<<acc.accName<<setw(8)<<acc.accPwd<<setw(8)<<acc.balance<<setw(8)<<acc.flag<<"|"<<endl;      cout<<"|----------------------------------------|"<<endl;  }    void pid()//查询{}void deposit()//存款 { long accNum;//存款的账号      double money;//存款的金额      int pos;      cout<<"请输入账号:";      cin>>accNum;      cout<<"请输入存款金额:";      cin>>money;  pos=searchAccount(accNum);    if(pos==-1){          //卡号有误          cout<<"卡号不存在,请重新输入卡号"<<endl;          //...          deposit();      }else{          //展示下存款前卡的信息          cout<<"存款前卡的信息:"<<endl;          printAccount(array[pos]);          //找到了该卡号所对应的卡          array[pos].balance+=money;           //展示存款后卡的信息          cout<<"存款后卡的信息:"<<endl;          printAccount(array[pos]);          cout<<"存款成功,按任意键返回"<<endl;          fflush(stdin);          getchar();       } }void withdrawal()//取款   {long accNum;//取款的账号      double money;//取款的金额      int pos;      cout<<"请输入账号:";      cin>>accNum;      cout<<"请输入取款金额:";      cin>>money;         if(pos==-1){          //卡号有误          cout<<"账号不存在,请重新输入账号"<<endl;          //...          deposit();      }else{          //展示下取款前卡的信息          cout<<"取款前卡的信息:"<<endl;          printAccount(array[pos]);          //找到了该卡号所对应的卡          array[pos].balance+=money;           //展示取款后卡的信息          cout<<"取款后卡的信息:"<<endl;          printAccount(array[pos]);          cout<<"取款成功,按任意键返回"<<endl;          fflush(stdin);          getchar();      }   }

原创粉丝点击