题目:
题目1.小明是一个计算机专业top student,祝贺他毕业了。并准备到银行参加工作。上班第一天,经理叫他编制一个实现一个活期储蓄处理程序,算作考查。上班第一天,一定要给领导一个好印象,小明二话没说,就答应了。现要你是小明了,请完成如下题目功能。储户开户、销户、存入、支出活动频繁,系统设计要求:
(1)能比较迅速地找到储户的帐户,以实现存款、取款记账;
(2)能比较简单,迅速地实现插入和删除,以实现开户和销户的需要。
分析:
从主函数出发,先是登录:输入用户名和密码,若输入信息一次不符合则提示,大于等于两次即自动退出系统,若符合即可登入,进入主菜单,选择1则去到开户函数kaihu(),this指针从账号初始赋予值1000后移1位即第一个开户者账号为10001,将输入数据给Record对象,创建结点封装Record对象,将Node结点插入Linklist链表,之后会显示账户所有信息并提示开户成功和该账户的初始信息,按任意键回到主菜单;选择2去到销户函数xiaohu(),则指针指向输入的需要销户账号并检验密码是否正确以及账户是否还存在,然后根据确认进行销户,按任意键返回主菜单;选择3去到查找函数chazhao()类似选项2的步骤然后显示出要该账户的各种信息,之后按任意键返回主菜单进行其他功能操作;选择4去到存款函数cun(),是按输入账号的指针地址查找账户信息看是否存在,然后进行存款步骤,最后显示存款后的账户信息,按任意键返回主菜单;选择5去到取款函数qu()类似选项4步骤,进行取款,若输入金额大于余额指针所指的数值则提示余额不足,若成功后显示取款后账户信息并提示取款结束,按任意键返回主菜单;选择6去到转账函数zhuan()验证转出账户信息是否正确然后根据输入的转入账户信息和金额进行转账,转出账户指针指向的余额数值减去转出的金额,转入账户指针则增加;选择0则直接退出程序。
功能: 登录(输入用户名和密码)、开户(输入账户名、密码、金额)、销户(输入账号、密码以及确认)、查询(输入账号、密码,结果有账号、户名、密码、余额、状态)、存款(输入账号和存款金额)、取款(输入账号、密码、取款金额)、转账(转出账号及其密码、转入账号、转入金额)、显示账户信息、退出系统。
//主函数.cpp
#include"Bank.h"
#include<iostream>
using namespace std;
void welcome();
void login(Bank *bank);
void mainmenu(Bank *bank);
int main()
{ Bank *bank=new Bank;
welcome();
login(bank);
return 0;
}
void welcome()
{ cout<<"|~——————————————————~|"<<endl;
cout<<"| |"<<endl;
cout<<"| > 感谢使用活期储蓄程序 < |"<<endl;
cout<<"| |"<<endl;
cout<<"|______________________________________|"<<endl;
}
void mainmenu(Bank *bank)
{ int choice=-1;
do
{ cout<<endl;
cout<<"|~——————————————————~|"<<endl;
cout<<"| 1.开户 |"<<endl;
cout<<"| 2.销户 |"<<endl;
cout<<"| 3.查询 |"<<endl;
cout<<"| 4.存款 |"<<endl;
cout<<"| 5.取款 |"<<endl;
cout<<"| 6.转账 |"<<endl;
cout<<"| 0.退出 |"<<endl;
cout<<"|______________________________________|"<<endl;
cout<<"请选择您想要进行的操作选项:"<<endl;
cin>>choice;
switch(choice)
{case 0:
exit(0);
case 1:
bank->kaihu();
break;
case 2:
bank->xiaohu();
break;
case 3:
bank->chazhao();
break;
case 4:
bank->cun();
break;
case 5:
bank->qu();
break;
case 6:
bank->zhuan();
break;
default:
cout << "——没有该选项——" << endl;
break;
}
}
while(true);
}
void login(Bank *bank)
{ string admin_name;
string admin_password;
for(int i=1;i<=3;++i)
{ cout<<endl;
cout<<"请输入您的用户名:"<<endl;
cin>>admin_name;
cout<<"请输入您的密码:"<<endl;
cin>>admin_password;
if((admin_name=="admin")&&(admin_password=="admin"))
{ mainmenu(bank);
}
else
{ if(i<2)
{ cout<<"——用户名或密码输入错误——"