




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
/*银行账户管理问题描述设计一个银行账户管理程序,账户的信息有账号(唯一)、姓名、余额、身份证号码、单位、电话号码、地址等,允许用户进行如下操作:开户、销户、存款、取款、转账、查询,一个用户可以有多个户头,账户的数值没有上限。*/#include#include #includeusing namespace std;class consumer;class YH /银行类public:void set_account();/银行开户功能void del_account(); /注销账户功能void transfer(int); /转账功能void enter_account(); /进入用户个人信息功能void addmoney(int,float);/存款功能void exitYH();/ 退出系统void functionshow();void save();void load();/ 功能界面protected: consumer *account20; static int acnum;/账户数;class consumer:public YH/用户类,继承银行类的属性public: friend class YH; consumer(int id,string Name,string PassWord,float m) ID=id;name=Name;money=m;passwd=PassWord; consumer()ID=0;name=0;money=0;passwd=0; int get_id()return ID; void savemoney();/ 取钱 string get_passwd()return passwd;/ 取得密码 void display(); void fetchmoney(); /取钱 void change_passwd(); void add_money(float); void dec_money(float); float get_money();/卡卡转帐private: int ID; /开户帐号 string passwd; / 用户密码 string name; / 用户姓名 float money; /开户金额;void YH:save()ofstream ofile(bankdat.dat,ios:out);ofstream outfile(bankdat.dat,ios:out);int n=0;outfileacnum ;for(n=0;nacnum;n+)outfileID ;outfilemoney ;outfilename ;outfilepasswd ;outfile.close(); /*读入用户信息功能实现*/void YH:load()ifstream infile(bankdat.dat,ios:in);if(!infile)cerr读取错误,无资料中!acnum;for(n=0;nid;infilem;infilenam;infilepassw;accountn-passwd;consumer * acc = new consumer(id,nam,passw,m); accountn = acc; infile.close();cout读取资料正常!endl;/*转账功能实现*/void YH:transfer(int x)int id; coutid; int flag = 1; int i = 0; while(iget_id() flag = 0; else i+; if(flag) cout帐号不存在!endlendl; return ; float b; coutendlb; while(b=0) cout请输入正确的数字!endl;coutb; if(accountx-get_money()b) cout对不起,金额不够!dec_money(b);accounti-add_money(b);return;/*账户金额计算*/void consumer:add_money(float x)money=x+money;void consumer:dec_money(float x)money=money-x;void YH:addmoney(int x,float y)accountx-money=accountx-money-y;float consumer:get_money()return money;void main()YH yh;yh.functionshow();/*主界面显示*/void YH:functionshow() int n;dosystem(cls); load();coutendl请输入相应的操作序号进行操作:endl;coutendl;cout endl;cout 1. 开户 endl;cout endl;cout 2.账户登录 endl;cout endl;cout 3.账户注销 endl;cout endl;cout 4.退出系统 endl;cout endl;coutendl;coutn; while(n4) cout操作错误,请输入正确的操作序号!endl; coutn; switch(n) case 1: set_account();/开户 break; case 2:enter_account();/登录break; case 3: del_account();/注销 break; case 4: exitYH();/退出 break; cin.get();while(true);void YH:enter_account()int id; coutid; int flag = 1; int i = 0; /_page_break_while(iget_id() flag = 0; else i+; if(flag) cout帐号不存在!endlendl; return; coutpassw;if(passw!=accounti-get_passwd() return;accounti-display();cin.get();cin.get();int n;dosystem(cls); cout请选择下列操作:endl;coutendl;cout endl;cout 1.查看账户信息 endl;cout endl;cout 2.取款 endl;cout endl;cout 3.存款 endl;cout endl;cout 4.修改密码 endl;cout endl;cout 5.转账 endl;cout endl;cout 6.返回上一菜单 endl;cout endl;coutendl;coutn;switch(n)case 1: accounti-display();break;case 2: accounti-fetchmoney();save();break;case 3:accounti-savemoney();save();break;case 4:accounti-change_passwd();save();break;case 5:transfer(i);save();break;case 6:return;cin.get();cin.get();while(1);void YH:set_account() int id; string nam; string passw; float m; coutendlid; coutendlnam; coutendlpassw; coutendlm; while(m=0) cout请输入正确的数字!m; consumer * acc = new consumer(id,nam,passw,m); accountacnum = acc; cout开户成功!endlendl; acnum+;save();cin.get();return;void YH:del_account() int id; coutendlid;int flag = 1; int i = 0; while(iget_id() flag = 0; else i+; if(flag) cout该帐号不存在,请重新输入!endl; return; for(int j=i;jacnum;j+) accountj = accountj+1; accountacnum-1=NULL; acnum-; cout你的账号已注销!endlendl; save();cin.get();return; void consumer:change_passwd()string pwd,repwd;coutpwd;coutrepwd;if(pwd!=repwd)cout你输入的两次密码不一样,按输入键返回上一层菜单!endl;elsecout密码修改成功,请牢记!endl;cin.get(); void consumer:fetchmoney()float m;char ch;docoutendl输入取款金额:m; while(m=0) cout请输入正确的数字!endl;coutm; if(moneym)cout对不起,你的余额不足!endl; else money=money-m; coutendl操作成功,请收好钱!endl; cout是否要继续该项操作:(Y/N) endl;coutch;while(ch!=n&ch!=N&ch!=Y&ch!=y)/选择错误时判定coutch;while(ch=y|ch=Y);void consumer:savemoney()/存钱函数功能实现 float c; char ch;docoutendl请输入要存入的金额:c; while(c=0) cout输入错误,请重新输入!endl;coutc; money=money+c; cout操作已成功!endl;cout是否要继续该项操作:(Y/N) endl;coutch;while(ch!=n&ch!=N&ch!=Y&ch!=y)coutch;while(ch=y|ch=Y);int YH:acnum=0;void consumer:display()/用户信息界面
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 开吊笼考试题及答案
- 玻璃制品机械成型工主管竞选考核试卷及答案
- 酒店保安考试题及答案
- 矿井制冷降温工转正考核试卷及答案
- 课件无响应问题解决
- 自行车与电动自行车装配工岗位操作技能考核试卷及答案
- 金山焊工考试题及答案
- 保险公估人工艺创新考核试卷及答案
- 医用消毒、低温设备组装调试工专项考核试卷及答案
- 教师调动考试题及答案
- 拱板屋面施工方案
- DB43∕T 439-2019 地理标志产品 湘莲
- 2021版十八项医疗质量安全核心制度附流程图
- 门窗安装用工合同模板
- 人教版六年级数学上册第一单元测试卷
- 小学英语教学评一体化
- TCECA-G 0286-2024 户式空气源热泵水机三联供系统技术规范
- 2024至2030年中国聚硫橡胶行业市场现状分析及未来前景规划报告
- 专题05 《红星照耀中国》试题50题中考语文名著阅读试题50题
- DBJ50-T-271-2017 城市轨道交通结构检测监测技术标准
- JT-T-155-2021汽车举升机行业标准
评论
0/150
提交评论