首页 模拟ATM机存取款管理系统面对对象课程设计Word

模拟ATM机存取款管理系统面对对象课程设计Word

举报
开通vip

模拟ATM机存取款管理系统面对对象课程设计Word滨江学院面向对象程序设计课程设计题目模拟ATM机存取款管理系统院系计算机系专业计算机科学与技术学生姓名学号指导教师二O一六年十二月二十日整理为word格式整理为word格式整理为word格式目录1.前言1.1选题目的及意义2.系统分析2.1需求分析2.2功能要求2.3软硬件环境3.系统概要设计3.1系统总体架构设计4.系统详细设计4.1管理模块4.2类的定义5.系统实现5.1类的实现5.2主要程序实现6.系统测试7.收获及体会8.参考文献9.附录整理为word格式整理为word格式整理为word格式1.前言1.1选...

模拟ATM机存取款管理系统面对对象课程设计Word
滨江学院面向对象程序 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 课程设计题目模拟ATM机存取款管理系统院系计算机系专业计算机科学与技术学生姓名学号指导教师二O一六年十二月二十日整理为word格式整理为word格式整理为word格式目录1.前言1.1选题目的及意义2.系统分析2.1需求分析2.2功能要求2.3软硬件环境3.系统概要设计3.1系统总体架构设计4.系统详细设计4.1管理模块4.2类的定义5.系统实现5.1类的实现5.2主要程序实现6.系统测试7.收获及体会8.参考文献9.附录整理为word格式整理为word格式整理为word格式1.前言1.1选题目的及意义 总结 初级经济法重点总结下载党员个人总结TXt高中句型全总结.doc高中句型全总结.doc理论力学知识点总结pdf 及运用一学期来所学的知识,训练我们灵活应用所学C++知识,应用到继承、抽象类、虚函数、虚基类、多态和文件的输入/输出。能够巩固、深化理论知识,提高编程水平、分析问题、解决问题的能力。1.2研究 内容 财务内部控制制度的内容财务内部控制制度的内容人员招聘与配置的内容项目成本控制的内容消防安全演练内容 模拟银行的自动取款机使用过程中的界面和用户交互过程。实现查询银行卡余额、取款、修改密码、退出系统等功能2.系统分析2.1需求分析人们的金融意识、科技意识己经有了很大的提高,在紧张忙碌的生活中,己越来越来不习惯每月奔忙于各银行营业柜台之问去排队缴各种各样的费用了;同时,各种经营单位如电信、移动、供电、煤气、自来水、证券等等一是为了提高服务质量、方便客户,二是为了减轻自己日趋繁重的工作量,纷纷委托银行为其开展代收代付业务。银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件系统来实现快速、有效、准确、安全的处理银行事物。2.2功能要求(1)卡号、密码输入最多三次,否则直接退出系统。(2)取款功能:取款金额受卡余额、机单笔最大取款金额及机当前剩余金额的限制。(3)查询功能:实现查询余额功能。(4)更改密码:实现密码更改功能,对于密码要有2次验证。(5)锁卡功能:实现卡被锁的功能。(6)退卡功能:实现退出系统功能。2.3软硬件环境环境:Visual c++ 6.0硬件:lenovoidea-pad整理为word格式整理为word格式整理为word格式3系统概要设计3.1系统整体架构设计系统总体框架银行管理系统存钱页面取款页面余额页面修改密码注销页面登录界面注册开户主界页面注销退出4.系统详细设计4.1管理模块(1)登录页面输入卡号和密码,根据用户输入的卡号和密码,到后台文件查询,若正确则登录成功,并保存卡好信息已备后用。若卡号存在和密码不匹配或无该卡号已经注销,提示该卡号已存在或已注销,保持界面三次不变等待用户的重新输入。(2)主界面页面主要导航栏有:欢迎使用储蓄卡管理(存款、取款、修改密码、转账功能、注销退出)(3)储蓄卡开户页面提供开户界面,由用户输入新储蓄卡的所有信息,将该信息保存到文件中,并将开户金额作为该卡的第一次存款记录存人文件。(4)存钱页面从登录界面得到卡号,并提供数据输入界面,等待用户的输入存款金额。从后台数据库中找到该用户余额记录,修改余额,并将该存款事件的相应信息写人数据库,同时将存钱的金额显示在页面上。整理为word格式整理为word格式整理为word格式(5)取款页面从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上,。(6)注销页面从关闭文件,状态为注销,最后关闭整个系统。4.2类的定义(1)comsumer类classcomsumer主要制定用户的成员数据,并进行登录与保存功能:comsumer类说明 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 名称属性说明ID数据成员用户账户数据name数据成员用户姓名money数据成员用户首次金额in数据成员用户身份证号address数据成员用户地址number数据成员用户电话Passwd数据成员用户密码savemoney()成员方法存钱fetchmoney()成员方法取钱change_passwd()成员方法修改密码get_money()成员方法卡卡转账(2)YH类YH类主要实现用户的各种功能:YH类说明表名称属性说明acnum数据成员账户数set_account()成员方法开户功能del_account()成员方法注销账户功能transfer()成员方法转账功能functionshow()成员方法主界面显示功能addmoney()成员方法存钱功能exitYH()成员方法退出系统功能5.系统实现5.1类的实现整理为word格式整理为word格式整理为word格式(1)consumer类classconsumer:publicYH//用户类,继承银行类的属性{public:friendclassYH;consumer(intid,stringName,intNumber,doubleIN,stringCompany,stringAddress,stringPassWord,floatm){ID=id;name=Name;number=Number;in=IN;company=Company;address=Address;money=m;passwd=PassWord;}consumer(){ID=0;name='0';number=0;in=0;company='0';address='0';money=0;passwd='0';}intget_id(){returnID;}voidsavemoney();//取钱stringget_passwd(){returnpasswd;}//取得密码voiddisplay();voidfetchmoney();//取钱voidchange_passwd();voidadd_money(float);//计算余额voiddec_money(float);//计算余额floatget_money();//卡卡转帐private:intID;//开户帐号stringpasswd;//用户密码stringname;//用户姓名floatmoney;//开户金额intnumber;stringcompany;stringaddress;doublein;};(2)银行类:classYH//银行类{public:voidset_account();//银行开户功能voiddel_account();//注销账户功能voidtransfer(int);//转账功能voidenter_account();//进入用户个人信息功能voidaddmoney(int,float);//存款功能voidexitYH();//退出系统整理为word格式整理为word格式整理为word格式voidfunctionshow();voidsave();voidload();//功能界面protected:consumer*account[20];staticintacnum;//账户数5.2主要程序实现(1)读入用户信息功能实现:voidYH::load(){ifstreaminfile("bankdat.dat",ios::in);//以输入方式打开文件if(!infile){cerr<<"读取错误,无资料中!"<>acnum;for(n=0;n>id;//从磁盘文件bankdat.dat读入信息infile>>m;infile>>nam;infile>>passw;infile>>company;infile>>number;infile>>address;infile>>in;account[n]->passwd;consumer*acc=newconsumer(id,nam,number,in,company,address,passw,m);//每读入一个n开辟一段内存account[n]=acc;//赋值首地址}infile.close();cout<<"读取资料正常!"<>id;intflag=1;整理为word格式整理为word格式整理为word格式inti=0;while((iget_id())flag=0;elsei++;}if(flag){cout<<"帐号不存在!"<>b;while(b<=0){cout<<"请输入正确的数字!"<>b;}if(account[x]->get_money()dec_money(b);account[i]->add_money(b);}cout<<"转账成功!!"<money=account[x]->money-y;}floatconsumer::get_money(){returnmoney;}voidmain(){YHyh;整理为word格式整理为word格式整理为word格式yh.functionshow();}(4)主界面显示voidYH::functionshow(){intn;do{system("cls");load();cout<>n;while(n<1||n>4){cout<<"操作错误,请输入正确的操作序号!"<>n;}switch(n){case1:set_account();//开户break;case2:enter_account();//登录break;case3:del_account();//注销break;case4:exitYH();//退出break;}cin.get();//输入流类istream的成员函数}整理为word格式整理为word格式整理为word格式while(true);}voidYH::enter_account(){intid;cout<<"请输入帐号:";cin>>id;intflag=1;inti=0;//__page_break__while((iget_id())flag=0;elsei++;}if(flag){cout<<"帐号不存在!"<>passw;if(passw!=account[i]->get_passwd())return;//返回到登录界面account[i]->display();cin.get();cin.get();intn;do{system("cls");cout<<"请选择下列操作:"<>n;整理为word格式整理为word格式整理为word格式(5)添加/删除账户功能实现:switch(n){case1:account[i]->display();break;case2:account[i]->fetchmoney();save();break;//从2-5功能,每执行一次调用一次save函数,重新写入数据case3:account[i]->savemoney();save();break;case4:account[i]->change_passwd();save();break;case5:transfer(i);save();break;case6:return;}cin.get();cin.get();}while(1);}voidYH::set_account(){intid;stringnam;stringpassw;floatm;stringcompany;stringaddress;intnumber;doublein;cout<<"请输入开户号:"<>id;cout<<"请输入开户人姓名:"<>nam;cout<<"请输入开户密码:"<>passw;cout<<"请输入存入金额:"<>m;cout<<"请输入开户人电话:"<>number;cout<<"请输入开户人公司:"<>company;cout<<"请输入开户人地址:"<>address;cout<<"请输入开户人身份证号码:"<>in;while(m<=0)整理为word格式整理为word格式整理为word格式{cout<<"请输入正确的数字!"<>m;}consumer*acc=newconsumer(id,nam,number,in,company,address,passw,m);account[acnum]=acc;cout<<"开户成功!!"<>id;intflag=1;inti=0;while((iget_id()){flag=0;}else{i++;}}if(flag){cout<<"该帐号不存在,请重新输入!"<>pwd;cout<<"请再输入一次新密码:";cin>>repwd;if(pwd!=repwd)cout<<"你输入的两次密码不一样,按输入键返回上一层菜单!"<"<>m;while(m<=0){cout<<"请输入正确的数字!"<>m;}if(money>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y')//选择错误时判定{cout<<"→";cin>>ch;}}while(ch=='y'||ch=='Y');}voidconsumer::savemoney()//存钱函数功能实现{floatc;charch;do{cout<"<>c;while(c<=0){cout<<"输入错误,请重新输入!"<>c;}money=money+c;cout<<"操作已成功!"<>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y'){cout<<"→";cin>>ch;}}while(ch=='y'||ch=='Y');}intYH::acnum=0;(8)用户信息显示:voidconsumer::display()//用户信息界面{system("cls");整理为word格式整理为word格式整理为word格式cout<<"#####################################"<#include#includeusingnamespacestd;classconsumer;classYH//银行类{public:voidset_account();//银行开户功能voiddel_account();//注销账户功能voidtransfer(int);//转账功能voidenter_account();//进入用户个人信息功能voidaddmoney(int,float);//存款功能voidexitYH();//退出系统voidfunctionshow();voidsave();voidload();//功能界面protected:consumer*account[20];staticintacnum;//账户数};classconsumer:publicYH//用户类,继承银行类的属性{public:friendclassYH;consumer(intid,stringName,intNumber,doubleIN,stringCompany,stringAddress,stringPassWord,floatm){ID=id;name=Name;number=Number;in=IN;company=Company;address=Address;money=m;passwd=PassWord;}consumer(){ID=0;name='0';number=0;in=0;company='0';address='0';money=0;passwd='0';}intget_id(){returnID;}voidsavemoney();//取钱stringget_passwd(){returnpasswd;}//取得密码voiddisplay();voidfetchmoney();//取钱整理为word格式整理为word格式整理为word格式voidchange_passwd();voidadd_money(float);//计算余额voiddec_money(float);//计算余额floatget_money();//卡卡转帐private:intID;//开户帐号stringpasswd;//用户密码stringname;//用户姓名floatmoney;//开户金额intnumber;stringcompany;stringaddress;doublein;};voidYH::save(){ofstreamofile("bankdat.dat",ios::out);//以输出方式打开文件ofstreamoutfile("bankdat.dat",ios::out);//以输出方式打开文件bankdat.dat接收从内存输出的数据intn=0;outfile<ID<<"";//把信息写入磁盘文件bankdat.datoutfile<money<<"";outfile<name<<"";outfile<passwd<<"";outfile<number<<"";outfile<company<<"";outfile<address<<"";outfile<in<<"";}outfile.close();}/*读入用户信息功能实现*/voidYH::load(){ifstreaminfile("bankdat.dat",ios::in);//以输入方式打开文件if(!infile){cerr<<"读取错误,无资料中!"<>acnum;for(n=0;n>id;//从磁盘文件bankdat.dat读入信息infile>>m;infile>>nam;infile>>passw;infile>>company;infile>>number;infile>>address;infile>>in;account[n]->passwd;consumer*acc=newconsumer(id,nam,number,in,company,address,passw,m);//每读入一个n开辟一段内存account[n]=acc;//赋值首地址}infile.close();cout<<"读取资料正常!"<>id;intflag=1;inti=0;while((iget_id())flag=0;elsei++;}if(flag){cout<<"帐号不存在!"<>b;while(b<=0){cout<<"请输入正确的数字!"<>b;}if(account[x]->get_money()dec_money(b);account[i]->add_money(b);}cout<<"转账成功!!"<money=account[x]->money-y;}floatconsumer::get_money(){returnmoney;}voidmain(){YHyh;yh.functionshow();}/*主界面显示*/voidYH::functionshow(){intn;do{system("cls");load();cout<>n;整理为word格式整理为word格式整理为word格式while(n<1||n>4){cout<<"操作错误,请输入正确的操作序号!"<>n;}switch(n){case1:set_account();//开户break;case2:enter_account();//登录break;case3:del_account();//注销break;case4:exitYH();//退出break;}cin.get();//输入流类istream的成员函数}while(true);}voidYH::enter_account(){intid;cout<<"请输入帐号:";cin>>id;intflag=1;inti=0;//__page_break__while((iget_id())flag=0;elsei++;}if(flag){cout<<"帐号不存在!"<>passw;if(passw!=account[i]->get_passwd())return;//返回到登录界面account[i]->display();cin.get();cin.get();intn;do{system("cls");整理为word格式整理为word格式整理为word格式cout<<"请选择下列操作:"<>n;switch(n){case1:account[i]->display();break;case2:account[i]->fetchmoney();save();break;//从2-5功能,每执行一次调用一次save函数,重新写入数据case3:account[i]->savemoney();save();break;case4:account[i]->change_passwd();save();break;case5:transfer(i);save();break;case6:return;}cin.get();cin.get();}while(1);}voidYH::set_account(){intid;stringnam;stringpassw;floatm;stringcompany;stringaddress;intnumber;doublein;cout<<"请输入开户号:"<>id;cout<<"请输入开户人姓名:"<>nam;整理为word格式整理为word格式整理为word格式cout<<"请输入开户密码:"<>passw;cout<<"请输入存入金额:"<>m;cout<<"请输入开户人电话:"<>number;cout<<"请输入开户人公司:"<>company;cout<<"请输入开户人地址:"<>address;cout<<"请输入开户人身份证号码:"<>in;while(m<=0){cout<<"请输入正确的数字!"<>m;}consumer*acc=newconsumer(id,nam,number,in,company,address,passw,m);account[acnum]=acc;cout<<"开户成功!!"<>id;intflag=1;inti=0;while((iget_id()){flag=0;}else{i++;整理为word格式整理为word格式整理为word格式}}if(flag){cout<<"该帐号不存在,请重新输入!"<>pwd;cout<<"请再输入一次新密码:";cin>>repwd;if(pwd!=repwd)cout<<"你输入的两次密码不一样,按输入键返回上一层菜单!"<"<>m;while(m<=0){cout<<"请输入正确的数字!"<>m;}整理为word格式整理为word格式整理为word格式if(money>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y')//选择错误时判定{cout<<"→";cin>>ch;}}while(ch=='y'||ch=='Y');}voidconsumer::savemoney()//存钱函数功能实现{floatc;charch;do{cout<"<>c;while(c<=0){cout<<"输入错误,请重新输入!"<>c;}money=money+c;cout<<"操作已成功!"<>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y'){cout<<"→";整理为word格式整理为word格式整理为word格式cin>>ch;}}while(ch=='y'||ch=='Y');}intYH::acnum=0;voidconsumer::display()//用户信息界面{system("cls");cout<<"#####################################"<
本文档为【模拟ATM机存取款管理系统面对对象课程设计Word】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
机构认证用户
夕夕资料
拥有专业强大的教研实力和完善的师资团队,专注为用户提供合同简历、论文写作、PPT设计、计划书、策划案、各类模板等,同时素材和资料部分来自网络,仅供参考.
格式:doc
大小:513KB
软件:Word
页数:0
分类:工学
上传时间:2021-03-25
浏览量:8