ATM机课程设计-ATM自动粗取款系统_第1页
ATM机课程设计-ATM自动粗取款系统_第2页
ATM机课程设计-ATM自动粗取款系统_第3页
ATM机课程设计-ATM自动粗取款系统_第4页
ATM机课程设计-ATM自动粗取款系统_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

电子信息学院软件工程系课程设计报告〔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++课程设计题目是“ATM取款机程序〞。(1)软件用途:ATM取款(2)功能概述:模拟ATM取款机登陆、取款、查询。1.2要求分析根据题目要求,做出如下的具体分析:从需求可以发现软件只需要一个ATM类,可以主要分为主页,主页面zhuyemian();登陆denglu();功能界面djmian();查询chaxun();取款qukuan();存款cunkuan();退出tuichu();几个主要的公有类和一个存款数数目私有类zong〔〕。其中,主页面zhuyemian()和操作界面djmian()两个函数用于接受输入用户的操作工程编号,用户输入编号后跳转到相对应的存款,查询,取款,退出4个函数模块。另外还有有一个输入流存储用户数据在文本文档。2.总体设计2.1功能分析1.要求分析如下:主页面zhuyemian()和功能界面djmian()两个函数用于接受输入用户的操作工程编号,用户输入编号后跳转到相对应的登陆,选择操作界面,存款,取款,查询,退出函数模块。另外还有一个输入流存储用户数据在文本文档。除此参加了一个time〔〕函数用于操作之间停顿,是用户可以看清自己的操作免得跳转过快。其中,主页面的功能包括登陆和退出,并且要求对输入不符合要求的数做出提示,其次登陆的账号密码输入错误也要提示并且要可以重新输入。操作界面也要实现对输入不符的情况做出提示。存款选项需要把用户输入的数据加上原本的金额并输出显示。取款选项需要把用户输入的数据用余额减去后输出显示。退出选项只需要做出输出感谢的话就行了。2.2数据抽象1.ATM类的信息:public={A,id,pd,x,y,z,B,cun,qu}A={整型,接收用户输入主页面操作编号}id={整型,接收用户输入账户}pd={整型,接收用户输入密码x={整型,读取文本里的账户}y={整型,读取文本里的密码}z={整型,读取文本里的余额}B={整型,接收用户输入功能页面操作编号}cun={整型,接收用户输入的存款金额}qu={整型,接收用户输入的取款金额}2.3类的定义ATM类ATMIntAintidintpdintxintyintzintBintcunintqu输入数据账号密码读取账号读取密码读取余额输入数据输入存款输入取款voidzhuyemian();voiddenglu();voiddjmian();intchaxun();intqukuan();intcunkuan();voidtuichu();voidget();voidtime();intzong;接收用户输入的操作代号核对登陆信息接收用户输入的操作代号查询余额取款存款退出登陆接收用户重新输入停顿总的金额2.4总体结构zhuyemianzhuyemianTuichuCunkuanQukuanChaxundenglu

3.详细设计TuichuCunkuanQukuanChaxundenglu3.1系统的停顿因为这个操作比拟简单,所以跳转比拟快,因此我设计了一个系统的停顿时间。voidATM::time(){cout<<"\n请稍等几秒钟!系统正在处理中...\n"<<endl;//每次操作之后便会显示这几个字}系统进入跳转后便调用函数time〔〕执行停顿,即time();Sleep(3000);3.2主页面主页面主要是执行接收用户的操作输入并跳转的登陆界面cin>>A;if(A>0&&A<3)//用户的输入是否是1或者2{switch(A){case1:denglu();break;//输入为1就跳转登陆界面case2:tuichu();break;//输入为2就退出}}else{cout<<"\t\n";cout<<"\t请输入正确的选项!按回车键继续操作...\n";cout<<"\t\n";cin.get();cin.get();3.3登陆登陆界面要先翻开一个txt文本,里面存放了用户数据。intid,pd,x,y,z; ifstreamshuju("ATM.txt",ios::in);//翻开文本,并且只做读取操作 if(!shuju)//判断是否翻开成功 {cerr<<"读取错误"<<endl; exit(1); }shuju>>x>>y>>z;//依次赋值给xyzzong=z;//z赋值给余额zong然后判断用户输入的数据是否与文本里对应的数据吻合,是就继续操作,否就重新输入。cout<<"\n☆☆☆☆☆请输入卡号:";cin>>id;if(id==x){cout<<"☆☆☆☆☆请输入密码:";cin>>pd;time();Sleep(3000);if(pd!=y){cout<<"\t\n";cout<<"\t☆☆您输入的密码不正确,请按回车键重新选择!☆☆\n";cout<<"\t\n";cin.get();cin.get();//密码错误那么重新输入else{cout<<"\t\n";cout<<"\t☆☆密码正确,请按回车键继续操作!☆☆\n";cout<<"\t\n";system("cls");djmian();}//密码正确那么跳转到功能界面}else{cout<<"\t\n";cout<<"\t您输入的卡号不存在,请按回车键后重新选择!"<<endl;cout<<"\t\n";cin.get();cin.get();//卡号错误重新输入3.4功能界面功能界面主要是接收用户的数据输入后跳转到相应的操作模块,一共有1到4个选项,分别执行跳转到存款,取款,查询和退出模块。cin>>B;if(B>0&&B<5)//判断用户输入是否为1到4{switch(B){case1:cunkuan();break;case2:qukuan();break;case3:chaxun();break;case4:tuichu();break;}//跳转到相应的模块}else{cout<<"\t\n";cout<<"\t请输入正确的选项!按回车键继续操作!\n";cout<<"\t\n";cin.get();cin.get();system("cls");djmian();//如果不是的话就继续输入}3.5存款简单的把用户的输入数据加到从文本读取的数据并返回结果并输出到屏幕intcun;cout<<endl<<"\n☆☆请输入您要存入的金额:";cin>>cun;time();Sleep(3000);zong=zong+cun;cout<<"\t\n";cout<<"\t您目前账户的余额为:"<<zong<<"元\n";cout<<"\t继续操作请按回车键...\n";cout<<"\t\n";cin.get();cin.get();3.6取款取款也是简单的用余额减去用户输入的数据后显示intqu;cout<<endl<<"\n☆☆请输入取款金额:";cin>>qu;time();Sleep(3000);if(qu>zong){cout<<"\t\n";cout<<"\t对不起!您的余额缺乏,请按回车键后重新输入...\n";cout<<"\t\n";qukuan();}else{zong=zong-qu;cout<<"\t\n";cout<<"\t您目前账户的余额为:"<<zong<<"元\n";cout<<"\t继续操作请按回车键...\n";cout<<"\t\n";cin.get();cin.get();3.7查询这个是最简单的局部,就是用cout输出余额即可。cout<<"\t\n";cout<<"\t您目前账户的余额为:"<<zong<<"元\n";cout<<"\t继续操作请按回车键...\n";cout<<"\t\n";cin.get();cin.get();3.8退出这个没什么,退出即可。time();Sleep(3000);cout<<endl;cout<<"☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n";cout<<"☆☆☆☆☆☆☆☆☆☆☆☆\n";cout<<"☆☆☆☆☆☆温馨提示:请记得收好您的银行卡和钱!欢送再次使用☆☆☆☆☆☆\n";cout<<"☆☆☆☆☆☆☆☆☆☆☆☆\n";cout<<"☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆\n";4.功能测试4.1本系统的主界面1.高校工资管理系统。本系统的主要功能有:1.用户登陆2.退出系统2.用户可根据系统提示和用户需要输入1—2的操作数字。3.当用户输入的选项不符合要求时,系统将验证并报错4.选择登陆输入账号如果不正确5.输入密码不正确那么提示重新输入4.2界面1.输入正确的密码后进入功能选择界面2.如果输入的不是1或者2那么提示重新输入2.输入选项1选择存款功能,并输入存款金额后显示余额3.输入选项2选择取款金额,此处如果输入的取款金额小于余额的话,系统将提示重新输入4.输入选项3选择查询功能5.输入选项4选择退出5.遇到的问题这次设计遇到最大的问题就是输入流的读取和赋值问题,读取只有要怎么一次赋值3个数研究了好久,读取数据后后要验证是否与用户输入的数据相同也由于自己经验缺乏老是在小问题上卡住。总的来说问题是很少的,因为程序本来就很简单的缘故也没多少复杂的要求就简单的处理了。6.课设小结这次的设计因为也没要求是复杂的功能,所以设计相对简单,整体的都只有一个类,用不同函数构成不同的模块来实现各项功能,设计中用的最多的就是if和swith语句,嘴复杂的也就是个输入流函数。而且我意识到这个系统不会返回数据给文本,也就是说只可以单纯的用一次,数据无法保存,这让我觉得缺乏。经过一个学期的学习和上机

温馨提示

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

评论

0/150

提交评论