主要实现的功能有:
1. 开户
2. 登录
3. 存钱
4. 取钱
5. 前台用户信息查询
具体实现代码如下(刚刚入门,如有不足,请大佬指出):
#include <iostream>
#include <string>
#include <time.h>
using namespace std;
//用户
class BankCard
{
public:
string Username; //姓名
string CardNumber; //身份证号码
string Password; //银行卡密码
int Accountnumber; //银行卡账户
float fMoney; //余额
BankCard* next;
};
//函数声明
void StartShow(); //主界面
void LogInShow(); //操作页面
void HeadShow(); //显示头
int OpenAccount(); //开户
int LogIn(); //登录
void EnquiryBalance(BankCard*); //查询余额
void SaveMoney(BankCard*); //存钱
void WithdrawMoney(BankCard*); //取钱
void EnquiryCentre(); //前台用户信息查询中心
//全局变量
BankCard* pHead = new BankCard;
int main()
{
pHead->next = NULL;
StartShow();
char ch;
cout << "\t\t\t";
cin >> ch;
while (1)
{
switch (ch)
{
case '1'://开户
OpenAccount();
break;
case '2'://登录
LogIn();
break;
case '3'://前台客户信息查询中心
EnquiryCentre();
break;
default:
cout << "输入错误,请重新输入" << endl;
break;
}
system("cls");
StartShow();
cout << "\t\t\t";
cin >> ch;
}
return 0;
}
//显示头
void HeadShow()
{
cout << "\t\t\t**************************************************" << endl;
cout << "\t\t\t***************欢迎来到中国人民银行***************" << endl;
cout << "\t\t\t**************************************************" << endl;
}
//主界面实现
void StartShow()
{
cout << "\t\t\t**************************************************" << endl;
cout << "\t\t\t***************欢迎来到中国人民银行***************" << endl;
cout << "\t\t\t**************************************************" << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 1.开户 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 2.登录 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 3.前台客户信息查询中心 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 4.请选择您的需求 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
}
//登录实现
void LogInShow()
{
cout << "\t\t\t**************************************************" << endl;
cout << "\t\t\t***************欢迎来到中国人民银行***************" << endl;
cout << "\t\t\t**************************************************" << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 1.查询余额 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 2.存钱 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 3.取钱 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
cout << "\t\t\t 4.退出登录 " << endl;
cout << "\t\t\t--------------------------------------------------" << endl;
}
//开户
int OpenAccount()
{
BankCard* pTail = pHead;
while (pTail->next != NULL)
{
pTail = pTail->next;
}
BankCard* pNew = new BankCard;
pNew->next = NULL;
cout << "\t\t\t请输入你的姓名:";
cin >> (pNew->Username);
cout << "\t\t\t请输入你的身份证号码:";
cin >> (pNew->CardNumber);
string Password;
cout << "\t\t\t请设置你的银行卡密码:" ;
cin >> Password;
cout << "\t\t\t请再次输入您设置的密码:" ;
cin >> (pNew->Password);
while (Password != pNew->Password)
{
cout << "\t\t\t两次输入的密码不一致" << endl;
cout << "\t\t\t请重新设置你的银行卡密码:" ;
cin >> Password;
cout << "\t\t\t请再次输入您设置的密码:" ;
cin >> (pNew->Password);
}
pNew->Accountnumber = rand()%900000+100000;//随机生成卡号
pNew->fMoney = 0;
cout << "\t\t\t开户成功!" << endl;
cout << "\t\t\t您的银行卡账号为:" << pNew->Accountnumber << endl;
system("pause");
system("cls");
pTail->next = pNew;
pTail = pNew;
return 0;//成功
}
//登录
int LogIn()
{
BankCard* Acc= pHead;
system("cls");
string Password; //银行卡密码
int Accountnumber; //银行卡账户
HeadShow();
cout << "\t\t\t请输入银行卡账号:";
cin >> Accountnumber;
while (Acc->Accountnumber != Accountnumber) //判断输入的账号是否存在
{
if (Acc->next == NULL)
{
cout << "\t\t\t银行卡账号错误请重新输入:" ;
cin >> Accountnumber;
}
else
{
Acc = Acc->next;
}
}
cout << "\t\t\t请输入银行卡密码:" ;
cin >> Password;
while (Acc->Password != Password)
{
cout << "\t\t\t密码错误!请重新输入:" ;
cin >> Password;
}
system("cls");//清屏
LogInShow();
char ch;
cin >> ch;
while (1)
{
switch (ch)
{
case '1'://查询余额
EnquiryBalance(Acc);
break;
case '2'://存钱
SaveMoney(Acc);
break;
case '3'://取钱
WithdrawMoney(Acc);
break;
case '4'://退出登录
return 0;
default:
cout << "\t\t\t输入错误,请重新输入:" << endl;
break;
}
system("pause");
system("cls");
LogInShow();
cin >> ch;
}
return 0;
}
//查询余额
void EnquiryBalance(BankCard* Acc)
{
cout << "\t\t\t您的银行卡余额为:" << Acc->fMoney << endl;
}
//存钱
void SaveMoney(BankCard* Acc)
{
int fMoney;
cout << "\t\t\t请输入您的存款金额:" ;
cin >> fMoney;
Acc->fMoney += fMoney;
cout << "\t\t\t存款成功!" << endl;
}
//取钱
void WithdrawMoney(BankCard* Acc)
{
int fMoney;
cout << "\t\t\t请输入您的取款金额:" ;
cin >> fMoney;
Acc->fMoney -= fMoney;
cout << "\t\t\t取款成功!" << endl;
}
//前台用户信息查询中心
void EnquiryCentre()
{
BankCard* Acc=pHead;
string Password; //银行卡密码
int Accountnumber; //银行卡账户
cout << "\t\t\t请输入银行卡账号:";
cin >> Accountnumber;
while (Acc->Accountnumber != Accountnumber) //判断输入的账号是否存在
{
if (Acc->next == NULL)
{
cout << "\t\t\t银行卡账号错误请重新输入:";
cin >> Accountnumber;
}
else
{
Acc = Acc->next;
}
}
cout << "\t\t\t请输入银行卡密码:";
cin >> Password;
while (Acc->Password != Password)
{
cout << "\t\t\t密码错误!请重新输入:";
cin >> Password;
}
system("cls");
HeadShow();
cout << "\t\t\t持卡人姓名为:" << Acc->Username << endl;
cout << "\t\t\t您的银行卡余额为:" << Acc->fMoney << endl;
cout << "\t\t\t您的身份证号码为:" << Acc->CardNumber << endl;
system("pause");
}