银行储蓄系统.docx
- 文档编号:11827807
- 上传时间:2023-06-02
- 格式:DOCX
- 页数:25
- 大小:19.61KB
银行储蓄系统.docx
《银行储蓄系统.docx》由会员分享,可在线阅读,更多相关《银行储蓄系统.docx(25页珍藏版)》请在冰点文库上搜索。
银行储蓄系统
//头文件
#include
#include
#include
#include
#include
#defineMAXNUM10000//银行中最大开户数
usingnamespacestd;
//定义卡的结构体
structAccount
{
charcardId[20];//银行卡的卡号
charname[9];//开户人
charidentity[19];//身份证号
charpassword[7];//密码
floatbalance;//余额
intstate;//状态0-正常-1-挂失-2-冻结-3-销户
};
//银行中所有卡
Accountarray[MAXNUM];
//银行中现已开户的数量
intsize=0;
voidmainface();//主界面
voidopenAccount();//1开户
voidsave();//2存款
voidwithdraw();//3取款
voidquery();//4查询
voidzhuangtai();
voidloss();//5挂失
voidtransfer();//6转账
voidfreeze();//7冻结
voidcloseAnAcount();//8销户
//公共函数
//根据卡的下标打印该卡的信息
voidprintCardInfo(intposition);//打印信息
voidshuchuzhuangtai();//判断卡的状态是处于:
正常/挂失/冻结/销户
intchakahao(charusecard[]);//查找卡号的函数
intchakahaomima();//查找卡号和密码信息的函数
voidgetPassword(charpass[],intnum);//被调用函数,密码以星号形式输出
charshenfenzhenghao[19];//身份证号
intposition=0;//位置
charusecard[20];//卡号
charname1[9];//用户名
charpass1[7],pass2[7];//密码
floatcash;//存/取款现金
intmain()
{
charusename[10];//输入的用户名
charusepass[10];//输入的密码
intn=2,i=0;
//银行系统首页
cout<<"★☆★☆★☆★☆★☆★☆★☆★☆★☆★"< cout<<"☆☆"< cout<<"★***********************★"< cout<<"☆*欢迎进入银行储蓄系统! *☆"< cout<<"★***********************★"< cout<<"☆☆"< cout<<"★☆★☆★☆★☆★☆★☆★☆★☆★☆★"< //根据输用户名和密码是否正确判断还有几次输入机会 do { cout<<"请输入银行工作人员姓名: "< cin>>usename; cout<<"请输入工作人员密码: "< getPassword(usepass,6); cout< //设定银行工作人员输入姓名与密码在系统中 if(strcmp("chl",usename)==0&&strcmp("123456",usepass)==0)//判断银行工作人员姓名与工作人员密码是否与输入的一致 { mainface(); } else { //判断还有几次输入机会,根据输入的密码是否正确 if(n>0) { cout<<"输入有误,请重新输入。 您还有"< "< n=n-1; } else { cout<<"账户已被锁定24小时! "< } } } while(strcmp("chl",usename)! =0||strcmp("123456",usepass)! =0);//如果银行工作人员姓名与密码与系统中的不一致,将继续循环程序,直到被锁定 return0; } voidmainface()//主界面 { intorder;//选择键 //业务界面 cout<<"\n+--------------------------+"< cout<<"|开户请按1存款请按2|"< cout<<"|取款请按3查询请按4|"< cout<<"|挂失请按5转账请按6|"< cout<<"|冻结请按7销户请按8|"< cout<<"+--------------------------+"< cout<<"请输入你的选择业务: "< cin>>order; switch(order) { case1: openAccount();//开户 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); break; case2: save();//存款 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); break; case3: withdraw();//取款 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); break; case4: query();//查询 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); case5: loss(); cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface();//挂失 case6: transfer();//转账 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); case7: freeze();//冻结 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); case8: closeAnAcount();//销户 cout<<"请按任意键返回: "< //执行完上面功能,按任意键返回主界面 getch(); system("cls");//清屏 mainface(); default: cout<<"对不起,您的选择超出了我们的服务范围"< mainface();//其他情况直接回到主界面 } } voidopenAccount()//1.开户操作 { cout<<"请输入卡号: "< cin>>usecard; cout<<"请输入开户人: "< cin>>name1; cout<<"请输入身份证号: "; cin>>shenfenzhenghao; cout<<"请输入密码: "< getPassword(pass1,6); cout<<"\n请确认密码: "< getPassword(pass2,6); //判断两次输入的密码是一样 if(strcmp(pass1,pass2)==0) { cout<<"\n请输入金额: "< cin>>cash; //将开户信息赋予开户的这张卡中 strcpy(array[size].cardId,usecard); strcpy(array[size].name,name1); strcpy(array[size].password,pass1); array[size].identity,shenfenzhenghao; array[size].state=0; array[size].balance=cash; //账户数量+1 size++; cout<<"\n开户成功! "< printCardInfo(size-1);//打印 } else { //两次输入的密码不一样 cout<<"\n两次输入的密码不一致,请重新操作! "; openAccount(); } } //打印卡的信息 voidprintCardInfo(intposition) { cout<<"+-------------------------------------------------+"< cout<<"|\t卡号|\t"< cout<<"+-------------------------------------------------+"< cout<<"|\t开户人|\t"< cout<<"+-------------------------------------------------+"< cout<<"|\t金额|\t"< : fixed)< (2)< cout<<"+-------------------------------------------------+"< cout<<"|\t状态|\t";shuchuzhuangtai(); cout<<"+-------------------------------------------------+"< } //判断卡的状态是处于: 正常/挂失/冻结/销户 voidshuchuzhuangtai() { if(array[position].state==0) cout<<"正常"< if(array[position].state==-1) cout<<"以挂失"< if(array[position].state==-2) cout<<"已被冻结"< if(array[position].state==-3) cout<<"已销户"< } voidsave()//2.存款 { intn=2; if(array[position].state! =0) { cout<<"卡的状态异常,不能进行存款! "< } else { cout<<"请输入银行卡卡号: "< cin>>usecard; position=chakahao(usecard); //根据卡下标判断是否存在 if(position==-1) cout<<"找不到该卡信息,不能进行存款! "; if(position! =-1) { cout<<"请输入现金金额: "< cin>>cash; if(cash>0)//判断输入现金是否有意义 { array[position].balance+=cash; printCardInfo(position);//打印 } else { cout<<"输入金额不正确,请重新输入! "; save(); } } } } //被调用函数,用来检验卡的信息是否存在 intchakahao(charusecard[]) { inti,position=-1; for(i=0;i<=size-1;i++) { if(strcmp(array[i].cardId,usecard)==0) { position=i; break; } } return(position); } //被调用函数,用来检验卡和密码信息是否存在 intchakahaomima(charusecard[],charpass1[]) { inti,position=-1; for(i=0;i<=size-1;i++) { if(strcmp(array[i].cardId,usecard)==0&&strcmp(array[i].password,pass1)==0) { position=i; break; } } return(position);//返回给主函数 } voidwithdraw()//3.取款 { if(array[position].state! =0) { cout<<"卡的状态异常,不能进行取款! "< } else { intn=2; cout<<"请输入银行卡卡号: "< cin>>usecard; cout<<"请输入银行卡密码: "< getPassword(pass1,6); position=chakahaomima(usecard,pass1); if(position==-1) cout<<"\n找不到该卡信息,不能进行取款! "; if(position! =-1) { cout<<"\n请输入取出现金金额: "< cin>>cash; if(cash { array[position].balance-=cash; printCardInfo(position); } else { cout<<"余额不足,请重新输入! "; withdraw(); } } } } voidquery()//4.查询 { cout<<"请输入银行卡卡号: "< cin>>usecard; cout<<"请输入密码: "< getPassword(pass1,6); position=chakahaomima(usecard,pass1); if(position==-1) { cout<<"\n查询不到该卡信息! "< cout<<"\n请按任意键返回主界面: "; getchar(); mainface(); } if(position! =-1) { if(strcmp(array[position].password,pass1)==0&&strcmp(array[position].cardId,usecard)==0) printCardInfo(position); zhuangtai(); } } voidzhuangtai()//检验卡的状态,根据不同的状态输出不同的结果 { if(array[position].state==0) { cout<<"\n该账户信息正常! "< } elseif(array[position].state==-1) { cout<<"\n该账户已挂失! "< } elseif(array[position].state==-2) { cout<<"\n该账户已冻结! "< } else { cout<<"\n该账户已销户! "< } } voidloss()//5.挂失 { if(array[position].state==-1) { cout<<"卡已处于挂失状态,不能进行挂失! "< } if(array[position].state==0) { cout<<"请输入银行卡卡号: "< cin>>usecard; cout<<"请输入银行卡密码: "< getPassword(pass1,6); position=chakahaomima(usecard,pass1); if(position==-1) cout<<"\n找不到该卡信息,不能进行挂失! "; if(position! =-1) { if(strcmp(array[position].password,pass1)==0&&strcmp(array[position].cardId,usecard)==0) { cout<<"\n是否确认挂失? "< cout<<"\n如果是,请按1,否则请按2"< intorder; cin>>order; switch(order) { //判断条件 //1.挂失 //2.取消挂失 //3.重新挂失 case1: array[position].state=-1; cout<<"\n挂失成功! "< case2: array[position].state=0; cout<<"\n取消挂失成功"< default: cout<<"\n挂失失败,请重新挂失! "< } } } } } voidtransfer()//6.转账 { if(array[position].state! =0) { cout<<"卡的状态异常,不能进行转账! "< } else { intposition2; charusecard1[20]; cout<<"请输入卡号: "< cin>>usecard1; cout<<"请输入密码: "< getPassword(pass1,6); position2=chakahaomima(usecard1,pass2);//验证卡号和密码 cout<<"\n请输入要转入的卡号: "< cin>>usecard; position=chakahao(usecard); //查找转入账号 if(position==-1) { cout<<"\n查不到该卡信息! "< } else { if(position2==-1) { if(strcmp(array[position].password,pass1)==0&&strcmp(array[position].cardId,usecard)==0) cout<<"\n密码或卡号错误! "< } else { if(strcmp(array[position].password,pass1)==0&&strcmp(array[position].cardId,usecard)==0) cout<<"\n请输入转账金额: "< cin>>cash; if(array[position].balance>=cash&&cash>0)//判断金额是否有效 { //执行转账 array[position2].balance-=cash; array[position].balance+=cash; cout<<"\n转账成功! "< printCardInfo(position2);//打印 } else { cout<<"\n余额不足! "< } } } } } voidfreeze()//7.冻结 { if(array[position].state==-2) { cout<<"卡处于冻结状态,不能进行再次冻结! "< } if(array[position].state==0) { cout<<"请输入银行卡卡号: "< cin>>usecard; cout<<"请输入银行卡密码: "< getPassword(pass1,6); intorder; cout<<"\n是否冻结该账户? "< cout<<"\n如果是,请按1,否则,请按2"< cin>>order; position=chakahaomima(usecard,pass1);//检验卡号和密码 if
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 银行 储蓄 系统
![提示](https://static.bingdoc.com/images/bang_tan.gif)