收藏 分享(赏)

c++ATM模拟自动取款机.doc

上传人:精品资料 文档编号:8883032 上传时间:2019-07-15 格式:DOC 页数:19 大小:260.67KB
下载 相关 举报
c++ATM模拟自动取款机.doc_第1页
第1页 / 共19页
c++ATM模拟自动取款机.doc_第2页
第2页 / 共19页
c++ATM模拟自动取款机.doc_第3页
第3页 / 共19页
c++ATM模拟自动取款机.doc_第4页
第4页 / 共19页
c++ATM模拟自动取款机.doc_第5页
第5页 / 共19页
点击查看更多>>
资源描述

1、C+课程设计2013 年 12 月 20 日课题:模拟 ATM 机存取款管理系统系别: 计算机科学系专业: 计算机科学与技术(网络应用)班级: B12 计科班姓名: 杨磊学号: 1208075160指导教师:任廷艳老师目录第一章 需求分析 1第二章 功能要求 1第三章 类的设计 3第四章 主流程图 4第五章 功能调试 5第六章 总结报告 7附录 程序代码 8第一章 需求分析为了方面用户的及时取款,查询,及时修改密码的方便,本课题设计并模拟银行的自动取款机使用过程中的界面和用户交互过程。实现查询银行卡余额、取款、修改密码、退出系统等功能。第二章 功能要求(1)卡号、密码输入最多三次,否则直接退出

2、系统。(2)取款功能:取款金额受卡余额、机单笔最大取款金额及机当前剩余金额的限制。(3)查询功能:实现查询余额功能。(4)更改密码:实现密码更改功能,对于密码要有 2 次验证。(5)锁卡功能:实现卡被锁的功能。(6)退卡功能:实现退出系统功能。第三章 类的设计ATM 类:class ATM/ATM 类private:int times;YongHupublic:ATM(YongHu/登陆界面bool HDMM(char ID,char mima);/核对密码void QK();/取款void CX();/查询void GG();/更改密码void GNJM();/功能界面void LK();/

3、锁卡void TC();/退出;类中包括:登陆界面,核对密码,取款,查询,更改密码,功能界面,锁卡,退出等函数。通过函数实现以上等功能。用户 YongHu 类:class YongHu/用户类private:char ID20;/卡号char mima10;/密码float money;/卡上余额public:friend class ATM;YongHu(char id,float Money,char Mima);char* get_ID();/获取卡号char* get_mima();/获取密码float get_money();/获取余额void set_mima(char Mima)

4、;/设置密码void set_money(float m);用户类包括:获取卡号,密码,余额,设置密码等函数。为获取用户信息而做的功能,通过以上函数,经过主函数建立对象,传入实参后可获取对象(用户)信息。主函数:主函数通过建立对象 a 和用户 y1,把 y1 的通过 a(y1)传入构造函数,调用登陆界面,输入密码和卡号后进入主界面,这就是主函数所做的功能。第四章 流程图主流程图:主界面取款功能查询功能登陆界面修改密码锁卡功能退出功能第五章 功能调试登陆界面:登陆成功后的主功能界面:取款:查询余额:更改密码:锁卡功能:退出功能:第六章 系统总结报告系统的设定:1, 本系统设定好测试卡号,密码,余

5、额。2, 取款时只能取 100 倍数的钱。3,修改密码错误时系统自动报错。4,卡号密码输入最多三次,如超过则系统直接锁卡并退出。遇到问题:1, 开始时更改密码功能输入一次就报错,且没有返回主界面,经过一番修改后,终得成功。2, 系统使用 do-while 语句较多,使得程序的左括号及右括号出现错误,查资料及问过老师后才解决这个问题。3, 本系统经过查阅网上信息及教材书,终于设计出来了,可是自己在完全脱离这些信息及资料后,不能独立完成设计,发现自己动手能力交差,书上的知识不能及时运用,造成了此次的不能独立完成,反过来想想后,自己存在的问题实在是多,在今后的学习上我会不断加强自己的不足,做出一个自

6、己满意的系统。附录:程序代码:#include#include#includeclass YongHu;/定义全局类 classclass ATM/ATM 类private:int times;YongHupublic:ATM(YongHu/登陆界面bool HDMM(char ID,char mima);/核对密码void QK();/取款void CX();/查询void GG();/更改密码void GNJM();/功能界面void LK();/锁卡void TC();/退出;class YongHu/用户类private:char ID20;/卡号char mima10;/密码floa

7、t money;/卡上余额public:friend class ATM;YongHu(char id,float Money,char Mima);char* get_ID();/获取卡号char* get_mima();/获取密码float get_money();/获取余额void set_mima(char Mima);/设置密码void set_money(float m);YongHu:YongHu(char id,float Money,char Mima)/用户的构造函数strcpy(ID,id);/strcpy 函数是复制两字符串的函数,头文件为money=Money;str

8、cpy(mima,Mima);float YongHu:get_money()/获取余额 函数return money;char* YongHu:get_ID()/获取卡号return ID;void YongHu:set_money(float m)money-=m;char* YongHu:get_mima()/获取密码return mima;void YongHu:set_mima(char Mima)/设置密码strcpy(mima,Mima);void ATM:DLJM()/登陆界面times=0;char ID20,mima10,ch;int i=0;doi=0;coutn;if(

9、n4) coutn;switch(n)case 1:QK();break;case 2:CX();break;case 3:GG();break;case 4:TC();break;while(true);void ATM:QK()float m;char ch;docoutm;while(mm;if(yh.get_money()-m2000)coutch;coutch;while(ch=y|ch=Y);void ATM:CX()coutmima;if(!HDMM(yh.get_ID(),mima)times+;elsebreak;while(timesmima;coutXmima;t=str

10、cmp(mima,Xmima);/对新密码进行比较,如果相等,则返回 0if(t!=0)cout“您输入的密码不一致,请重新输入!“endl;while(t!=0);yh.set_mima(mima);cout“密码修改成功,请您牢记!“endl;GNJM();void ATM:LK()cout“对不起,你输入的密码错误已达三次,您的卡已被没收 !“endl;exit(1);void ATM:TC()cout“请取走您的卡,感谢您的使用,欢迎您下次再来 !“endl;exit(0);void main()YongHu y1(“123456“,10000,“123456“);/创建用户 y1ATM a(y1);a.DLJM();a.GNJM();

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报