• 大小: 1.69MB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2023-11-12
  • 语言: C/C++
  • 标签: ATM  C++  

资源简介

ATM模拟系统(atm.exe)与内部管理系统(admin.exe)均为对同目录下的文件account.dat进行读取写入操作。本ATM管理系统包括六个模块:登录,挂失功能,修改密码,取款功能,转账功能,查询功能。其中密码环节采用md5加密

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include “md5.h“
#include “md5.cpp“
using namespace std;
class account;
vector P;
static int num=0;
struct accountHeader
{
    unsigned   int dwPacketCount;           
    unsigned   int dwReserve;
};

struct accountInfo            
{
    char  Name[20];           
    char  Id[20];     
char Num[20];      
    char  Passwd[40];   
    float Money;
    bool Status;
};

class account
{
public:
friend void SaveRecord(vector& p);
friend void ReadRecord(vector& p);
friend class ATM;   
account(){};
account(char Name[]char Id[20]char Num[]char Password[]float Moneybool Status);
void chang_money(string xyzfloat mon);
void set_money(float input);
bool check_passwd();
char* input_passwd();
    void set();
    void correct();
    void get();
char* get_name(); 
    char* get_num(); 
char* get_id();
char* get_passwd();
bool get_status();
void set_status();
float get_money(); 
private:
    char  name[20];           
    char  id[20];     
char num[20];      
    char  passwd[50];   
    float money;
    bool status;
};

void ReadRecord(vector& p)
{
    ifstream fin(“account.dat“ios::binary);
    accountHeader ifh;
    memset(&ifh0sizeof(accountHeader));
    fin.read((char*)&ifhsizeof(ifh));
    for (int i= 0; i< ifh.dwPacketCount;i++)
    {
        accountInfo iphInfo;
        fin.read((char*)&iphInfo.Namesizeof(iphInfo.Name));
        fin.read((char*)&iphInfo.Idsizeof(iphInfo.Id));
        fin.read((char*)&iphInfo.Numsizeof(iphInfo.Num));
        fin.read((char*)&iphInfo.Passwdsizeof(iphInfo.Passwd));
        fin.read((char*)&iphInfo.Moneysizeof(iphInfo.Money));
        fin.read((char*)&iphInfo.Statussizeof(iphInfo.Status));
        account *ad = new account(iphInfo.NameiphInfo.IdiphInfo.NumiphInfo.PasswdiphInfo.MoneyiphInfo.Status);
        p.push_back(ad);
 
    }
    fin.close();
}

void SaveRecord(vector& p)
{
    ofstream fout(“account.dat“ios::binary);
    accountHeader ph;
    ph.dwPacketCount = p.size();
    ph.dwReserve     = 0;
    fout.write((char*)(&ph)sizeof(ph));
    for (int i = 0; i < p.size(); i++)
    {
        accountInfo phInfo;
        strcpy(phInfo.Name p[i]->get_name());
        strcpy(phInfo.Id p[i]->get_id());
        strcpy(phInfo.Num p[i]->get_num());
        strcpy(phInfo.Passwdp[i]->get_passwd());
        phInfo.Money=p[i]->get_money();
        phInfo.Status=p[i]->get_status();
        fout.write((char*)&phInfo.Namesizeof(phInfo.Name));
        fout.write((char*)&phInfo.Idsizeof(phInfo.Id));
        fout.write((char*)&phInfo.Numsizeof(phInfo.Num));
        fout.write((char*)&phInfo.Passwdsizeof(phInfo.Passwd));
        fout.write((char*)&phInfo.Moneysizeof(phInfo.Money));
        fout.write((char*)&phInfo.Statussizeof(phInfo.Status));

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2014-06-27 10:12  2013051995-学生管理\
     文件       10199  2014-06-27 10:11  2013051995-学生管理\mage.cpp
     文件     1339496  2014-06-27 10:11  2013051995-学生管理\mage.exe
     目录           0  2014-06-27 10:10  2013051995-ATM\
     文件        1163  2014-06-23 17:36  2013051995-ATM\account.dat
     文件     1350312  2014-06-23 16:40  2013051995-ATM\admin.exe
     文件     1372585  2014-06-23 16:36  2013051995-ATM\atm.exe
     文件      249416  2014-06-27 10:09  2013051995-ATM\gmon.out
     文件       10752  2014-06-23 17:37  2013051995-ATM\list.xls
     文件      483650  2014-06-23 17:47  2013051995-ATM\使用说明.doc
     目录           0  2014-06-27 10:10  2013051995-ATM\源代码\
     目录           0  2014-06-27 10:10  2013051995-ATM\源代码\admin\
     文件        9032  2014-06-23 16:57  2013051995-ATM\源代码\admin\admin-full.cpp
     文件        1385  2014-06-23 16:34  2013051995-ATM\源代码\admin\admin.dev
     文件         726  2014-06-23 16:29  2013051995-ATM\源代码\admin\adminclass.h
     文件        1797  2014-06-23 16:34  2013051995-ATM\源代码\admin\adminfile.h
     文件        2653  2014-06-23 16:30  2013051995-ATM\源代码\admin\adminfunc.h
     文件         287  2014-06-23 16:29  2013051995-ATM\源代码\admin\adminstruct.h
     文件        3800  2014-06-23 16:40  2013051995-ATM\源代码\admin\main.cpp
     文件        8967  2014-06-23 13:02  2013051995-ATM\源代码\admin\md5.cpp
     文件         558  2014-06-23 11:38  2013051995-ATM\源代码\admin\md5.h
     目录           0  2014-06-27 10:10  2013051995-ATM\源代码\atm\
     文件       11318  2014-06-23 20:50  2013051995-ATM\源代码\atm\atm-full.cpp
     文件        1597  2014-06-23 11:36  2013051995-ATM\源代码\atm\atm.dev
     文件         405  2014-06-23 17:56  2013051995-ATM\源代码\atm\atm.layout
     文件        1612  2014-06-23 11:52  2013051995-ATM\源代码\atm\class.h
     文件        1799  2014-06-23 12:40  2013051995-ATM\源代码\atm\file.h
     文件        6518  2014-06-23 16:14  2013051995-ATM\源代码\atm\func.h
     文件        1189  2014-06-23 16:36  2013051995-ATM\源代码\atm\main.cpp
     文件        9716  2014-06-22 23:07  2013051995-ATM\源代码\atm\md5.cpp
     文件         558  2014-06-23 11:38  2013051995-ATM\源代码\atm\md5.h
............此处省略3个文件信息

评论

共有 条评论