银行管理系统 (一)

2014-11-23 22:13:25 ? 作者: ? 浏览: 14

//

// main.cpp

// 银行管理系统

//

// Created by 丁小未 on 13-7-23.

// Copyright (c) 2013年 dingxiaowei. All rights reserved.

//

//项目:银行管理系统

//系统实现的主要有管理,取款机管理,用户查询等功能:

//*管理模块:存款、取款、开户、销户、修改信息、办卡、挂失卡;

//*用户查询模块;

//*取款机信息管理模块:管理员管理查询和维护、客户查询和取款等功能;

//可以考虑利率

#include

using namespace std;

#include

#include

#include

#include

#define MAX 20


class Person

{

public:

string cardNum;//卡号

string cardName;//用户名

double money;//余额

string beginTime;//开户日期

bool useState=false;//是否挂失


/*******用户的功能***********/

//查询我当前用户的账户余额

double SelectMoney()

{

return money;

}

//选择挂失和解锁卡

bool ChooseUseState(bool f)

{

useState = f;

return useState;

}

//取钱

double GetMoney(double m)

{

if (m>money) {

cout<<"您的余额不足!"<

}

return money -= m;

}

//存钱

double AddMoney(double m)

{

return money += m;

}

//构造函数

Person(string cardnum,string cardname,double money,string begintime,bool usestate)

{

this->cardNum = cardnum;

this->cardName = cardname;

this->money = money;

this->beginTime = begintime;

this->useState = usestate;

}

//默认构造函数

Person(){};

//运算符重载

// Person&person = (const Person &other)

// {

//

// }


};

int total=0;//记录总数

Person person[MAX];//定义一个person数组

double price=0.1;//默认汇率

/*******************函数申明******************************************/

void set_psw();//设置密码

int psw_check();//密码验证

void Show_menu();//显示菜单

int get_managermenu_choice();//接受管理员菜单选择

void PrintPersonTitle();//打印头信息


char* GetTime();//获取系统当前时间

void Show_Iden_menu();//身份选择菜单

int get_Idemenu_choice();//接受身份菜单选择

void inputInfile(Person person[],int n);//将类数组写入文件

void Show_PersonMenu();//显示普通用户功能菜单

void Show_Managermenu();//显示管理员功能菜单

int get_personmenu_choice();//普通用户接受功能菜单

int findPerson(Person *person,int n,string findName);//查找名字返回序列号

bool ISManager(string &name,string &pwd);//验证管理员身份

bool ISPerson(string &name,string &pwd);//验证用户信息

/**********************************************************************/

//查找名字返回序列号

int findPerson(Person *person,int n,string findName)

{

int i;

int m=-1;

for (i=0; i

if (person[i].cardName == findName) {

m=i;

break;

}

}

return m;//返回person的下标

}


//将类数组写入文件,数组本身就是地址传递

void inputInfile(Person person[],int &n)

{

ofstream onfile;//写入文件类

onfile.open("Person.txt");

for (int i=0; i

onfile<

}

onfile.close();

}

//管理员共有继承自普通人

class Manager:public Person

{

public:

//开户

void addPerson(Person person[],int &n)

{

char f='y';

string sTemp;

char *t=GetTime();

ofstream onfile;//写入文件

onfile.open("person.txt");

do {

cout<<"输入卡号:";

cin>>sTemp;

onfile<

person[n].cardNum = sTemp;

cout<<"请输入用户名:";

cin>>sTemp;

onfile<

onfile<

person[n].cardName = sTemp;

onfile<<0<<" ";//余额默认是0

person[n].money = 0;

sTemp = t;

onfile<

person[n].beginTime = sTemp;

onfile<<0;//0代表没有挂失,正常使用

person[n].useState = false;

onfi

-->

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: