小银行系统

来源:互联网 发布:质量控制系统 php 编辑:程序博客网 时间:2024/04/29 03:29
#include <iostream>#include <windows.h>#include <fstream>#include <cstring>using namespace std ;char name[20] ;int PASSWORD=123456 ;class Hand{   public:          void query() ;    //查询余额          void witdraw() ; //取款          void deposit() ; //存款          void read() ; //读取文件          void save() ;          void xiu() ;   //修改密码          void zhuan() ;   private:          double money ;};class Print{ //显示 public:         void password() ;         void mnue() ;//显示菜单         void control() ; //根据用户的选项实现功能};//Print函数块void Print::mnue(){      system("cls");      cout << "欢迎来到MY的银行"<< endl ;      cout << "1.查询余额" << endl ;      cout << "2.取款" << endl ;      cout << "3.存款" << endl ;      cout << "4.转账" << endl ;      cout << "5.修改密码" << endl ;      cout << "6.退出" << endl ;}void Print::control(){      int i ;      Hand h ;      h.read() ;      while(1)    {      mnue() ;      cout << "请输入您需要操作功能的序号:" ;      cin >> i ;      switch(i)      {          case 1 : h.query() ; break ;          case 2 : h.witdraw() ; break ;          case 3 : h.deposit() ; break ;          case 4 : h.zhuan() ; break ;          case 5 : h.xiu() ; break ;          case 6 : h.save() ; exit(1) ;          default : cout << "输入错误请重新输入!" << endl ;Sleep(1000) ;break ;      }    }}void Print::password(){      int n ;      cout << "请输入帐户:" ;      cin >> name ;      strcat (name,".txt") ;      int i=0 ;      Hand p ;      p.read() ;      cout << "请输入密码:"  ;      while(i<3)    {      cin >> n ;      if(n!=PASSWORD)      {        system("cls") ;        cout << "输入错误请重新输入:" ;      }      else      {          break ;      }      i++ ;    }    if(i==3)    {        system("cls") ;        cout << "您已经输入错误三次,请您到前台进行重新办理,谢谢" << endl ;        exit(1) ;    }}//Hand类块void Hand::query() //查询余额{     cout << "账户余额为:" << money << endl ;     Sleep(2000) ;}void Hand::witdraw()  //取款{    double i ;    cout << "请输入您要取款的金额:" ;    cin >> i ;    if(i<=money)    {        money = money - i ;        cout << "取款成功!" << endl ;    }    else    {        cout << "对不起您账户余额不足,本银行不能透支" << endl ;    }    Sleep(2000) ;}void Hand::deposit() //存入{    double i ;    cout << "请输入您要存入的金额:" ;    cin >> i ;    money = money + i ;    cout << "存款成功!" << endl ;    Sleep(1000) ;}void Hand::read(){     ifstream fin(name,ios::in) ;     if(!fin.read((char*)&PASSWORD,sizeof(PASSWORD))) {return;}     fin.read((char*)&money,sizeof(money)) ;     fin.close() ;}void Hand::save(){     ofstream fout(name,ios::out) ;     fout.write((char*)&PASSWORD,sizeof(PASSWORD)) ;     fout.write((char*)&money,sizeof(money)) ;     fout.close() ;}void Hand::xiu()//修改{    int i,j ;    cout << "请输入新密码:" ;    cin >> i ;    cout << endl ;    cout << "请再次输入新密码:" ;    cin >> j ;    if(i == j)    {        PASSWORD = i ;    }    else{cout << "俩次输入不一致" << endl ;Sleep(1000);}}void Hand::zhuan()//转存{     char s[20] ;     int f ;     int m ;     cout << "请输入转入的账号: " << endl ;     cin >> s ;     strcat (s,".txt") ;     cout << "请输入转入的金额:" << endl ;     cin >> m ;
     if(m>money){cout << "转入金额大于卡内金额";Sleep(1000);return;}     money -= m ;     ifstream fin(s,ios::in) ;     if(!fin){cout << "没有此客户" << endl ; exit(1);}     fin.read((char*)&f,sizeof(f)) ;     fin.read((char*)&money,sizeof(money)) ;     fin.close() ;     money += m ;     ofstream fout(s,ios::out) ;     fout.write((char*)&f,sizeof(f)) ;     fout.write((char*)&money,sizeof(money)) ;     fout.close() ;}int main(){    class Print t ;    t.password() ;    t.control() ;    return 0 ;}

我是利用多个文件来分别储存账户,文件中有每一个账户的么密码,文件名为账户,进行数据处理。其中如果是没有的账号我会为他初始密码为123456.


0 0
原创粉丝点击