📄 bank1.cpp
字号:
#include<iostream.h>
#include<stdlib.h>
#include"account.h"
#include"savings.h"
#include"checking.h"
#include"card.h"
#include"term.h"
Account* Find(int a) //查找帐号函数
{
if (a==Savings::First()->AccountNo())
{
return Savings::First();
}
Account* tp=Savings::First();
while(tp->Next())
{
if (a==tp->AccountNo())break;
tp=tp->Next();
}
if (tp->AccountNo()!=a)
{
return NULL;
}
return tp;
}
//----------------------------------------
void TermAccountCreate() //TermAccount类建立函数
{
int a;float b;
cout<<"请输入帐号和金额: ";
cin >> a >> b;
if (TermAccount::First()) //注意地方
{
while (Find(a)!=NULL)
{
cout<<"此帐户已经存在. "
<<"请您重新输入: ";
cin >>a>>b;
}
}
TermAccount* TermAccountTemp;
TermAccountTemp=new TermAccount(a,b);
cout<<"已经创建一个期限帐号."<<endl
<<"取银行帐号: "<<TermAccountTemp->AccountNo()<<endl
<<"取帐户中金额: "<<TermAccountTemp->AcntBalan()<<endl
<<"现在已经"<<TermAccount::NoAccounts()
<<" 有帐户存在."<<endl<<endl;
}
//----------------------------------------
void CreditCardCreate() //CreditCard类建立函数
{
int a;float b;
cout<<"请您输入帐号和金额: ";
cin >> a >> b;
if (CreditCard::First()) //注意地方
{
while (Find(a)!=NULL)
{
cout<<"此帐号已存在. "
<<" 请您重新输入 : ";
cin >>a>>b;
}
}
CreditCard* CreditCardTemp;
CreditCardTemp=new CreditCard(a,b);
cout<<"您的信用卡号已经创建完毕."<<endl
<<"取银行帐号: "<<CreditCardTemp->AccountNo()<<endl
<<"取帐户中余额: "<<CreditCardTemp->AcntBalan()<<endl
<<"现在已经"<<CreditCard::NoAccounts()
<<" 有帐户存在."<<endl<<endl;
}
//----------------------------------------
void CheckingCreate() //Cheking类建立函数
{
int a;float b;
cout<<" 请您输入帐号和金额: ";
cin >> a >> b;
if (Checking::First()) //注意地方
{
while (Find(a)!=NULL)
{
cout<<"此帐号已存在. "
<<" 请您重新输入: ";
cin >>a>>b;
}
}
Checking* CheckingTemp;
CheckingTemp=new Checking(a,b);
cout<<"已创建一个结算帐号."<<endl
<<"取银行帐号: "<<CheckingTemp->AccountNo()<<endl
<<"取帐户中余额: "<<CheckingTemp->AcntBalan()<<endl
<<"现在已经 "<<Checking::NoAccounts()
<<" 有帐户存在."<<endl<<endl;
}
//----------------------------------------
void SavingsCreate() //Savings类建立函数
{
int a;float b;
cout<<"请输入帐号和金额 : ";
cin >> a >> b;
if (Savings::First()) //注意地方
{
while (Find(a)!=NULL)
{
cout<<"此帐号已存在. "
<<" 请您重新输入 : ";
cin >>a>>b;
}
}
Savings* SavingsTemp;
SavingsTemp=new Savings(a,b);
cout<<"已创建一个储蓄帐号."<<endl
<<"取银行帐号: "<<SavingsTemp->AccountNo()<<endl
<<"取帐户中余额: "<<SavingsTemp->AcntBalan()<<endl
<<"现在已经 "<<Savings::NoAccounts()
<<" 有帐户存在."<<endl<<endl;
}
//----------------------------------------
void SavingsFind() //查找Savings并输出
{
int a;
cout<<"请问您查找什么帐号? ";
cin >>a;
if (!Savings::First())
{
cout<<"此帐户不存在,"
<<"请您先创建帐户."<<endl;
return;
}
Account* b=Find(a);
if (b==NULL)
{
cout<<"没有找到 "<<a
<<" 您指定的帐号 !"<<endl;
}
else
{
b->Display();
}
}
//----------------------------------------
int submenu() //子菜单函数
{
int j=1;
cout<<endl
<<"1.储蓄"<<endl
<<"2.结算"<<endl
<<"3.信用卡"<<endl
<<"4.期限"<<endl
<<"请您选择: ";
cin >>j;
while (j!=1&&j!=2&&j!=3&&j!=4)
{
cout<<"请输入1,2,3,4: ";
cin >>j;
}
return j;
}
//----------------------------------------
void AccountDeposit() //存款
{
int k;float b;
cout<<"请您输入帐号 : ";
cin >>k;
if (!Account::First())
{
cout<<"此帐户不存在,"
<<"请您先创建帐户."<<endl;
return;
}
Account* a=Find(k);
while (a==NULL)
{
cout<<"没有找到 "<<k
<<" 您指定的帐号 !"<<endl
<<"请您再试一次 : ";
cin >>k;
a=Find(k);
}
cout<<"请输入您的存储金额?: ";
cin >>b;
a->SetRemit();
a->Deposit(b);
a->Display();
}
//----------------------------------------
void AccountWithdrawal() //取款
{
int k;float b=0.0;
cout<<"请输入您的帐号: ";
cin >>k;
if (!Account::First())
{
cout<<"此帐户不存在,"
<<"请您先创建帐户."<<endl;
return;
}
Account* a=Find(k);
while (a==NULL)
{
cout<<"没有找到 "<<k
<<" 您指定的帐户 !"<<endl
<<"请再试一次 : ";
cin >>k;
a=Find(k);
}
a->Display();
if (a->GetType()==4){
a->Withdrawal(b);
a->Display();
return;
}
cout<<"请输入您将提取的金额: ";
cin >>b;
a->SetRemit();
a->Withdrawal(b);
a->Display();
}
//----------------------------------------
void Quit() //删除堆中对象并退出
{
Account* t1=Account::First();
if (!t1)exit(0);
Account* t2;
for(;t1->Next();){
t2=t1->Next();
delete t1;
t1=t2;
}
exit(0);
}
//----------------------------------------
void main() //主函数
{
// clrscr(); //清屏
cout<<" ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ☆ 小猫银行欢迎您! ☆ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ☆ 设计 :张彦明 ☆ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ☆ linxiaomao@21cn.com ☆ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ☆ ★"<<endl;
cout<<" "<<endl;
cout<<" ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★"<<endl;
cout<<" "<<endl;
int i=1;int re;
while(i<6&&i>0)
{
cout<<endl
<<" 1.创建新帐户"<<endl
<<" 2.检查帐户"<<endl
<<" 3.存款"<<endl
<<" 4.取款"<<endl
<<" 5.退出"<<endl
<<" 请选择(1-5): ";
cin >>i;
switch(i)
{
case 1:
re=submenu(); //调用子菜单函数
if (re==1)
SavingsCreate(); //调用储蓄函数
else{
if(re==2)
CheckingCreate(); //调用结算函数
else{
if(re==3)
CreditCardCreate(); //调用信用卡函数
else
TermAccountCreate(); //调用期限存款函数
}
}
break;
case 2:
SavingsFind(); //调用查找储蓄帐户函数
break;
case 3:
AccountDeposit(); //调用存款函数
break;
case 4:
AccountWithdrawal(); //调用取款函数
break;
case 5:
Quit(); //删除堆对象退出函数
default:
i=1;
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -