C++课程设计报告

ATM柜员机模拟程序设计实验报告

1.     需求分析

随着市场经济的发展,人们的物质生活得到了极大的提高,手中的剩余资金也日益增多。受传统观念的影响,绝大多数的人把资金放进了银行,而在要使用现金的时候再到银行提取现金。这就导致了银行业务的急剧增加。虽然银行网点越来越多,银行的工作效率也随着信息化有比较明显的增长,但是依旧不能满足广大用户的需要。而一味的增加营业网点,从理论上虽然能稍微的缓解银行的压力,但是治标不治本,而且每增加一个网点,不仅要付出昂贵的资金成本,还需长期投入人力资源,成本非常之昂贵。这就迫切要一种自动的,易于普及的,低成本的设备来解决这一问题。于是ATM系统就应运而生了。

 

2.     程序要求:

   要求:设计一个程序,当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM柜员机系统,用户可以按照以下规则进行:

查询余额:初始余额为10000

ATM取款:每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。

ATM存款:不能出现负存款。

修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

3.    算法分析:

本次设计的ATM自动取款机需要实现四大功能,即查询余额,取款,存款,修改密码。还需要两大最基本的功能,即登陆和退出。

根据上述的功能分析,我们可以把整个ATM系统分为登陆模块,查询模块,取款模块,存款模块,修改密码模块。除此之外,还有登陆系统后的功能选择模块。由于各个模块是通过界面显示出来的,则程序设计又可以理解为几大界面的设计:登陆界面,主界面,查询余额界面,取款界面,存款界面,修改密码界面。除了几大界面之外,还有系统的初始化,主要是初始卡号密码的设定等。

(1)   登陆界面:用户输入正确的卡号和密码就可以登陆到该系统的主界面,进行相应的操作:查询余额,取款,存款,修改密码。

(2)   主界面:包括查询,存款,取款,修改密码的按钮,选择相应按钮则可进入相应的操作。

(3)   查询界面:在主界面中选择查询按钮可以进行查询操作。通过查询功能可以查询账户的余额,查询结束后,可以选择相应按钮,继续进行其他操作,也可以就此退出系统。

(4)   取款界面:在主界面中选择取款按钮可以进行取款操作,取款功能在对话框中输入您想要取出的金额。但是每次取款金额为100的倍数,总额不超过5000元,支取金额不允许透支。取款完毕后,可以选择相应按钮,继续进行其他操作,也可以就此退出系统。

(5)   存款界面:在主界面中选择存款按钮可以进行存款操作。在对话框里输入你想要存入的金额,存款完毕后,可以选择相应按钮,继续进行其他操作,也可以就此退出系统。

(6)   修改密码:在主界面中选择修改密码按钮可以进行修改密码操作。但是新密码长度不小于6位,不允许出现6位完全相同的情况,只有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

框图:

C++课程设计报告_第1张图片


4.    心得体会:

经过几天的苦战,终于把这个课程设计完成了。刚刚开始看到题目的时候,有点手足无措,不知从何下手。经过几番的研究,有点头绪了,便开始慢慢的写了。在写的过程中也遇到了许多的问题,程序也调试了好久,快好的时候,又发现还有些限制条件没有设置到。在做这个课程设计的过程中,也帮我复习了很多的知识点,很多原来不知道或不太懂的知识点也得到了牢固,比如我们最后学的结构体那一章,其实当时学的时候虽然懂了,可是却没有用过,也不知道什么时候应该用它,这次的卡号和密码我就把它放在了一个结构体中。还有就是在这个设计中我也用了很多子函数,每个功能的实现都是通过调用子函数来实现的,这也牢固了我这方面的知识。这次在修改密码时,我用到了一个新的函数atoi,把字符数组转化为整型数组。这次的课程设计虽然花费了很多的时间,也调试了很多次,但是收获还是挺大的。

 

 

你可能感兴趣的:(C++课程设计报告)