ATM课程设计报告_第1页
ATM课程设计报告_第2页
ATM课程设计报告_第3页
ATM课程设计报告_第4页
ATM课程设计报告_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

课程设计报告课程:面向对象程序设计课程设计名称:简易ATM机系统1. 设计内容:银行ATM机的使用已经普及,人们都已习惯利用自动柜员机来提取现金、查询存款、电子转账、修改密码等等。请设计一个简易的ATM机系统,提供以下几个功能:(1)取款 提供客户提取现金的功能(2)转账 提供客户在同一银行内的转账功能(3)查询余额 查询客户文件中的存款余额(4)查询交易情况 查询交易文件中的交易记录(5)修改密码 能够修改用户的密码2.设计目的与要求:2.1设计目的(1) 要求学生达到熟练掌握C+语言的基本知识和技能; (2) 基本掌握面向对象程序设计的基本思路和方法; (3) 能够利用所学的基本知识和技能,解决简单的面向对象程序设计问题。2.2设计要求(1)要求利用面向对象的方法以及C+的编程思想来完成系统的设计; (2)要求在设计的过程中,建立清晰的类层次; (3)在系统的设计中,至少要用到面向对象的一种机制;(4)有友好的交互式界面(5)要有合适的注释;(6) 完成系统总结报告以及系统使用说明书。(统一使用A4白纸)3.系统分析与设计3.1主要知识点(1)类与对象的基本知识(2)静态数据成员具有静态生存期。由于静态数据成员不属于任何一个对象,因此可以通过类名对它进行访问,一般的用法是“类名:标识符”,再类的定义中仅仅对静态数据成员进行引用性声明,必须在命名空间作用域的某个地方使用类名限定定义性声明,这时也可以进行初始化。3.2关键技术程序中每一种功能用一个类函数来实现,共设计了9个类函数。窗口主页,登陆界面,功能菜单界面,退出,取款,转账,查询余额,修改密码,查询交易情况几个功能函数。具体定义如下所示:(1)zhuye()功能函数先定义一个int 型数据p用作记录用户所选择的功能,如果是所给出的功能则进入登陆界面,如果不是所所给出的功能则提示选择错误,并重新进入主页。(2)denglu()功能函数先让用户输入自己的账号,如果该账号存在,则再让用户输入密码,如果密码正确则进入功能选择界面;如果密码不正确则提示输入错误;如果账号不存在,也提示输入错误。并记录错误次数,若错误次数超过三次就强行退出,反之重新进入主页;(3)functiion()功能函数该功能函数提供了主要服务选项,先定义一个int型数据m用以记录用户的选择,如果是正确的选择就进入该功能,否则提示错误,重新让用户选择。(4)tuichu()功能函数该函数是终止服务用的。(5)qukuan()功能函数进入该功能,客户先输入取款金额a,若atotal,则提示余额不足,反之进行取款。(6)chaxunyue()功能函数该函数提供查询当前余额服务。(7)chaxunjilu()功能函数该函数记录了用户当前的交易情况,包括取款金额和转账金额,其中a代表取款金额,b代表转账金额。(8)changemima()功能函数进入该函数用户可以修改账户密码,首先定义两个long型数据xmm和xxmm。xmm用以记录第一次输入的密码,xxmm用以记录第二次输入的密码,若两次输入的密码一致,则密码修改成功;但如果两次输入的新密码不一致则退出,重新选择所需要的服务。(9)zhuanzhang()功能函数该函数提供转账功能,先让用户输入转账金额b,若btotal,则提示余额不足,退出并让用户重新选择所需服务;若b=total就进行转账。3.3基本功能要求(1)功能选择可以用菜单来实现例如:1.取款2.转账3.查询余额4.查询交易情况5.修改密码6.退出用户通过输入不同的数字进入不同的功能界面。主要功能已列出(2)运行时给出明确的提示信息。比如,当用户进入功能菜单时,若输入的数字大于6或小于1,系统就会自动提示选择错误;当用户进入取款功能界面时,若取款金额大于当前总金额则提示“余额不足”等等4.源程序代码/*/主页:void ATM:zhuye() coutt-n;coutt*n;coutt* 尊敬的用户您好!欢迎使用ATM自动取款机 *n;coutt* 1.用户登陆 *n; coutt* 2.退出系统 *n;coutt*n;coutt-n;coutp;if(p=1|p=2)if(p=1)denglu();elsetuichu();elsecout您的输入有误!endl;zhuye();/*/登陆:void ATM:denglu()coutid;if(id111111&id999999)coutmima;if(mima=id)function();elsecout您的账号或密码不正确!3)cout对不起,您的输入频繁出错,请核对后再登录!endl;exit(0);elsezhuye();elsecout此账号不存在!3)cout对不起,您的输入频繁出错,请核对后再登录!endl;exit(0);elsezhuye();/*/ 功能菜单:void ATM:function()int m;coutt-n;coutt*n;coutt* 1.取款 *n;coutt* 2.转账 *n;coutt* 3.查询余额 *n;coutt* 4.查询交易情况 *n;coutt* 5.修改密码 *n;coutt* 6.退出 *n; coutt*n;coutt-n;coutm;if(m0&m7)switch(m)case 1:qukuan();break;case 2:zhuanzhang();break;case 3:chaxunyue();break;case 4:chaxunjilu();break;case 5:changemima();break;case 6:tuichu();break;elsecout对不起,您的选择有误!endl;function();/*/退出:void ATM:tuichu()coutt-n;coutt*n;coutt* 请收好您的卡,欢迎下次光临! *n;coutt*n;coutt-n;exit(0);/*/取款:void ATM:qukuan()couta;if(a=total)total-=a;cout取款成功!endl;function();elsecout对不起,您的余额不足!endl;function();/*/转账:void ATM:zhuanzhang()coutb;if(b=total)total-=b;cout转账成功!endl;function();elsecout对不起,您的余额不足!endl;function();/*/查询余额:void ATM:chaxunyue()cout您的当前余额为:total 元endl;function();/*/查询交易情况:void ATM:chaxunjilu()cout您当前已进行:endl;cout取款:a 元endl;cout转账:b 元endl;function();/*/修改密码:void ATM:changemima()int xmm,xxmm; coutxmm;coutendl;coutxxmm;if(xmm!=xxmm)coutendl;cout对不起,您两次输入的密码不一致!endl;elsecoutendl密码修改成功!endl;mima=xmm;function();/*/主函数:int main()ATM User;User.zhuye();return 0;/*/附源程序:#include iostream#include stringusing namespace std;class ATMprivate:static int total; /记录账户余额static int time; /记录登录错误次数long id,mima;int a,b; /a代表取款金额,b代表转账金额public:void zhuye(); /窗口主页void denglu(); /登陆界面void function(); /功能界面void tuichu(); /退出void qukuan(); /取款void chaxunyue(); /查询余额void chaxunjilu(); /查询交易记录void zhuanzhang(); /转账void changemima(); /修改密码;/ATM机类的具体实现int ATM:total=4000; /默认本金为4000int ATM:time=0; /次数初始值为0void ATM:zhuye() coutt-n;coutt*n;coutt* 尊敬的用户您好!欢迎使用ATM自动取款机 *n;coutt* 1.用户登陆 *n; coutt* 2.退出系统 *n;coutt*n;coutt-n;coutp;if(p=1|p=2)if(p=1)denglu();elsetuichu();elsecout您的输入有误!endl;zhuye();void ATM:denglu()coutid;if(id111111&id999999)coutmima;if(mima=id)function();elsecout您的账号或密码不正确!3)cout对不起,您的输入频繁出错,请核对后再登录!endl;exit(0);elsezhuye();elsecout此账号不存在!3)cout对不起,您的输入频繁出错,请核对后再登录!endl;exit(0);elsezhuye();void ATM:function()int m;coutt-n;coutt*n;coutt* 1.取款 *n;coutt* 2.转账 *n;coutt* 3.查询余额 *n;coutt* 4.查询交易情况 *n;coutt* 5.修改密码 *n;coutt* 6.退出 *n; coutt*n;coutt-n;coutm;if(m0&m7)switch(m)case 1:qukuan();break;case 2:zhuanzhang();break;case 3:chaxunyue();break;case 4:chaxunjilu();break;case 5:changemima();break;case 6:tuichu();break;elsecout对不起,您的选择有误!endl;function();void ATM:tuichu()coutt-n;coutt*n;coutt* 请收好您的卡,欢迎下次光临! *n;coutt*n;coutt-n;exit(0);void ATM:qukuan()couta;if(a=total)total-=a;cout取款成功!endl;function();elsecout对不起,您的余额不足!endl;function();void ATM:chaxunyue()cout您的当前余额为:total 元endl;function();void ATM:chaxunjilu()cout您当前已进行:endl;cout取款:a 元endl;cout转账:b 元endl;function();void ATM:changemima()int xmm,xxmm; coutxmm;coutendl;coutx

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论