ATM机课程设计--ATM自动粗取款系统

上传人:e****s 文档编号:214828146 上传时间:2023-05-31 格式:DOC 页数:14 大小:1MB
收藏 版权申诉 举报 下载
ATM机课程设计--ATM自动粗取款系统_第1页
第1页 / 共14页
ATM机课程设计--ATM自动粗取款系统_第2页
第2页 / 共14页
ATM机课程设计--ATM自动粗取款系统_第3页
第3页 / 共14页
资源描述:

《ATM机课程设计--ATM自动粗取款系统》由会员分享,可在线阅读,更多相关《ATM机课程设计--ATM自动粗取款系统(14页珍藏版)》请在装配图网上搜索。

1、电子信息学院软件工程系课 程 设 计 报 告2021 -2021 第 2学期课程设计类型:面向对象程序设计题目:ATM自动粗取款系统 电子信息学院 制目录目录11. 问题分析21.1 问题描述21.2 要求分析22. 总体设计22.1 功能分析22.2 数据抽象22.3 类的定义32.4 总体结构33.详细设计33.1 系统的停顿43.2 主页面43.3 登陆43.4 功能界面53.5 存款63.6 取款63.7 查询73.8 退出74. 功能测试74.1 本系统的主界面74.2 界面85.遇到的问题126. 课设小结12参 考 文 献131. 问题分析1.1 问题描述本次C+课程设计题目是“

2、ATM取款机程序。(1)软件用途:ATM取款(2)功能概述:模拟ATM取款机 登陆、取款、查询。1.2 要求分析根据题目要求,做出如下的具体分析:从需求可以发现软件只需要一个ATM类,可以主要分为主页,主页面zhuyemian();登陆denglu();功能界面djmian();查询chaxun();取款qukuan();存款cunkuan();退出tuichu();几个主要的公有类和一个存款数数目私有类zong。其中,主页面zhuyemian()和操作界面djmian()两个函数用于接受输入用户的操作工程编号,用户输入编号后跳转到相对应的存款,查询,取款,退出4个函数模块。另外还有有一个输入

3、流存储用户数据在文本文档。2. 总体设计2.1 功能分析1. 要求分析如下:主页面zhuyemian()和功能界面djmian()两个函数用于接受输入用户的操作工程编号,用户输入编号后跳转到相对应的登陆,选择操作界面,存款,取款,查询,退出函数模块。另外还有一个输入流存储用户数据在文本文档。除此参加了一个time函数用于操作之间停顿,是用户可以看清自己的操作免得跳转过快。其中,主页面的功能包括登陆和退出,并且要求对输入不符合要求的数做出提示,其次登陆的账号密码输入错误也要提示并且要可以重新输入。操作界面也要实现对输入不符的情况做出提示。存款选项需要把用户输入的数据加上原本的金额并输出显示。取款

4、选项需要把用户输入的数据用余额减去后输出显示。退出选项只需要做出输出感谢的话就行了。2.2 数据抽象1ATM类的信息:public= A,id,pd,x,y,z,B,cun,quA=整型,接收用户输入主页面操作编号 id=整型,接收用户输入账户 pd=整型,接收用户输入密码x=整型,读取文本里的账户 y=整型,读取文本里的密码 z=整型,读取文本里的余额 B=整型,接收用户输入功能页面操作编号 cun=整型,接收用户输入的存款金额qu=整型,接收用户输入的取款金额2.3 类的定义1 ATM类l ATMl Int Al int idl int pdl int xl int yl int zl i

5、nt Bl int cunl int qu输入数据账号密码读取账号读取密码读取余额输入数据输入存款输入取款l void zhuyemian();l void denglu();l void djmian();l int chaxun();l int qukuan();l int cunkuan();l void tuichu();l void get();l void time();l int zong;接收用户输入的操作代号核对登陆信息接收用户输入的操作代号查询余额取款存款退出登陆接收用户重新输入停顿总的金额2.4 总体结构zhuyemianTuichuCunkuanQukuanChaxun

6、denglu3.详细设计3.1 系统的停顿因为这个操作比拟简单,所以跳转比拟快,因此我设计了一个系统的停顿时间。void ATM:time() coutn请稍等几秒钟! 系统正在处理中.nA; if(A0&A3)/用户的输入是否是1或者2 switch(A) case 1:denglu();break;/输入为1就跳转登陆界面 case 2:tuichu();break;/输入为2就退出 else coutt-n; coutt 请输入正确的选项!按回车键继续操作. n; coutt-n;cin.get(); cin.get();3.3 登陆登陆界面要先翻开一个txt文本,里面存放了用户数据。i

7、nt id,pd,x,y,z;ifstream shuju(ATM.txt,ios:in);/翻开文本,并且只做读取操作if(! shuju)/判断是否翻开成功cerr读取错误xyz;/依次赋值给xyz zong=z;/z赋值给余额zong然后判断用户输入的数据是否与文本里对应的数据吻合,是就继续操作,否就重新输入。coutid; if(id=x) coutpd; time();Sleep(3000); if(pd!=y) coutt-n; coutt您输入的密码不正确,请按回车键重新选择!n; coutt-n; cin.get();cin.get();/密码错误那么重新输入else cout

8、t-n; coutt密码正确,请按回车键继续操作! n; coutt-n; system(cls); djmian(); /密码正确那么跳转到功能界面 else coutt-n; coutt您输入的卡号不存在,请按回车键后重新选择!endl; coutB; if(B0&B5)/判断用户输入是否为1到4 switch(B) case 1:cunkuan();break; case 2:qukuan();break; case 3:chaxun();break; case 4:tuichu();break; /跳转到相应的模块 else coutt-n; coutt 请输入正确的选项! 按回车键继

9、续操作! n; coutt-n; cin.get(); cin.get(); system(cls); djmian();/如果不是的话就继续输入 3.5 存款简单的把用户的输入数据加到从文本读取的数据并返回结果并输出到屏幕int cun; coutendlcun; time();Sleep(3000); zong=zong+cun; coutt-n; coutt 您目前账户的余额为:zong元 n; coutt 继续操作请按回车键. n; coutt-n; cin.get(); cin.get();3.6 取款取款也是简单的用余额减去用户输入的数据后显示int qu; coutendlqu;

10、 time();Sleep(3000); if(quzong) coutt-n; coutt 对不起!您的余额缺乏,请按回车键后重新输入. n; coutt-n; qukuan(); else zong=zong-qu; coutt-n; coutt 您目前账户的余额为:zong元 n; coutt 继续操作请按回车键. n; coutt-n; cin.get(); cin.get();3.7 查询这个是最简单的局部,就是用cout输出余额即可。coutt-n; coutt 您目前账户的余额为:zong元 n; coutt 继续操作请按回车键. n; coutt-n; cin.get(); c

11、in.get();3.8 退出这个没什么,退出即可。time();Sleep(3000); coutendl; coutn; cout n; cout 温馨提示:请记得收好您的银行卡和钱!欢送再次使用 n; cout n; coutn;4. 功能测试4.1 本系统的主界面1. 高校工资管理系统。本系统的主要功能有:1. 用户登陆2. 退出系统2. 用户可根据系统提示和用户需要输入12的操作数字。3.当用户输入的选项不符合要求时,系统将验证并报错4.选择登陆输入账号如果不正确5.输入密码不正确那么提示重新输入4.2 界面1.输入正确的密码后进入功能选择界面2.如果输入的不是1或者2那么提示重新输

12、入2.输入选项1选择存款功能,并输入存款金额后显示余额3.输入选项2选择取款金额, 此处如果输入的取款金额小于余额的话,系统将提示重新输入4.输入选项3选择查询功能5.输入选项4选择退出5.遇到的问题 这次设计遇到最大的问题就是输入流的读取和赋值问题,读取只有要怎么一次赋值3个数研究了好久,读取数据后后要验证是否与用户输入的数据相同也由于自己经验缺乏老是在小问题上卡住。总的来说问题是很少的,因为程序本来就很简单的缘故也没多少复杂的要求就简单的处理了。6. 课设小结 这次的设计因为也没要求是复杂的功能,所以设计相对简单,整体的都只有一个类,用不同函数构成不同的模块来实现各项功能,设计中用的最多的

13、就是if和swith语句,嘴复杂的也就是个输入流函数。而且我意识到这个系统不会返回数据给文本,也就是说只可以单纯的用一次,数据无法保存,这让我觉得缺乏。经过一个学期的学习和上机实践,使我对C+语言有了更认识和和了解,要想学好它要重在实践,要通过不断的上机操作才能更好的学习它。这次课程设计让我更加了解C+。课设题目要求不仅要求对课本知识有较深刻的了解,同时要求程序设计者有较强的思维和动手能力和更加了解编程思想和编程技巧。这次课程设计让我有一个深刻的体会,那就是细节决定成败,编程最需要的是严谨,如何的严谨都不过分,往往检查了半天发现错误发生在某个括号,分号,引号,或者数据类型上。就像我在写ATM类

14、时,写完后,忘了在大括号后加个分号,这一点小小的错误也耽误了我几十分钟,所以说细节很重要。程序设计时,也不要怕遇到错误,在实际操作过程中犯的一些错误还会有意外的收获,感觉课程设计很有意思。在具体操作中对这学期所学的C+语言的理论知识得到稳固,到达课程设计的根本目的,也发现自己的缺乏之出,在以后的上机中应更加注意,同时体会到C+语言具有的语句简洁,使用灵活,执行效率高等特点。发现上机的重要作用,特别是对数组和循环有了深刻的理解。这个程序是我看了书之后遇到问题请教了同学和老师完成的,同时我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开团队,必须发扬团结协作的精神。某个人的离群都可能导致导致整项工作的失败。实习中只有一个人知道原理是远远不够的,必须让每个人都知道,否那么一个人的错误,就有可能导致整个工作失败。团结协作是我们成功的一项非常重要的保证。而这次课程设计也正好锻炼我们这一点,这也是非常珍贵的最后,感谢老师在这几天的悉心指导,祝老师在新的一年里身体健康,工作顺利。 参 考 文 献1 苏成C+程序设计教程 清华大学出版社,2021年

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!