ImageVerifierCode 换一换
格式:DOCX , 页数:26 ,大小:209.78KB ,
资源ID:8228055      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/8228055.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(银行账户管理系统设计说明书.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

银行账户管理系统设计说明书.docx

1、银行账户管理系统设计说明书*实践教学* 兰州理工大学计算机与通信学院2011年秋季学期 面向对象 课程设计题 目: 银行账户管理系统 专业班级:计算机科学与技术四班姓 名: 卢文雅 学 号: 10240444 指导教师: 朱红蕾 成 绩: 目 录摘要 1 系统总体框架 2模块设计与分析 3类的设计与分析 4特色算法分析 5功能测试 7设计总结 11参考文献 12致 谢 13附 录 14摘要本文详细介绍了银行账户管理系统程序的设计与实现,该程序具有系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。程序设计语言采用Visual C+,程序运行平台为Windows XP。

2、该银行帐目管理信息系统,优点是设计过程思路清晰、模块划分简洁,设计各阶段分工明确。经过实践证明,该划分是合理的,极大得提高了本系统的实现。关键词:银行账户管理系统 程序设计 C+.系统总体框架图1描述了银行管理系统的主要界面,登录界面,注册开户,主界页面,注销退出。 图1 模块设计与分析2.1 登录页面输入卡号和密码,根据用户输入的卡号和密码,到后台文件查询,若正确则登录成功,并保存卡好信息已备后用。若卡号存在和密码不匹配或无该卡号已经注销,提示该卡号已存在或已注销,保持界面三次不变等待用户的重新输入。2.2 主界面页面主要导航栏有:欢迎使用储蓄卡管理(存款、取款、查询余额、查询历史记录、注销

3、退出)2.3 储蓄卡开户页面提供开户界面,由用户输入新储蓄卡的所有信息,将该信息保存到文件中,并将开户金额作为该卡的第一次存款记录存人文件。2.4 存钱页面从登录界面得到卡号,并提供数据输入界面,等待用户的输入存款金额。从后台数据库中找到该用户余额记录,修改余额,并将该存款事件的相应信息写人数据库,同时将存钱的金额显示在页面上。2.5 取款页面从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上,。2.6 查询余额页面从登录界面得到卡好,把该卡上的余额显示到界面中。

4、2.7 查询历史记录页面2.8 注销页面从关闭文件,状态为注销,最后关闭整个系统。面得到卡号,把该卡在取款页面中,输入取款金额并对取款金额与存款余额进行比较,如果三次都超过的话就输出:很抱歉,你重复输入错误多次,在退卡中,如果取款金额小于存款余额的话就执行,并保存记录。的所有存款取款查询出来,并显示在页面上。类的设计与分析1User 类class User 主要制定用户的成员数据,并进行登录与保存功能: 表1 User 类说明表名称属性说明Accout数据成员用户账户数据Name数据成员用户姓名Fmoney数据成员用户首次金额ID数据成员用户身份证号Address数据成员用户地址Telepho

5、ne数据成员用户电话Pword1数据成员用户密码Pword2数据成员用户再一次确认密码Get()构造函数默认构造函数Login()成员方法登录方法Password()成员方法密码验证SaveFile()成员方法保存数据2Function 类Function 类 主要实现用户的各种功能:图1特色算法分析1.User类中的PassWord方法 功能:输入密码并进行确认,如果密码确认三次失败,则退出系统。 代码:void User:PassWord() int num=0; while(num3) coutntt请输入位储蓄密码:; for(int i=0;i8;i+) Pword1i=getch(

6、);cout*; Pword18=0; coutendl; coutntt请再一次确认密码:; for(int i=0;i8;i+) Pword2i=getch();cout*; coutendl; Pword28=0; if(strcmp(Pword1,Pword2)=0) coutnntt密码确认成功,单击任何键进入主菜单; return ; else num+; coutntt你输入的密码错误,请重新输入!nendl; if(num=3) system(cls); cerrnnntt对不起,你三次输入不正确nendl tt感谢你的使用,再见! endl; exit(0); getch()

7、; . 功能测试 5.1 首页图25.2储蓄卡开户页面 图35.3 主界面页面主要导航栏有:欢迎使用储蓄卡管理(存款、取款、查询余额、查询历史记录、注销退出)图45.4 存钱页面 图55.5 取款页面从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上。输入取款金额: 当取款金额大于现有金额: 图6当取款金额小于或等于现有金额: 图75.6查询余额页面图85.7查询历史记录页面图95.8用户信息 图105.9注销页面从保存数据并关闭文件,状态为注销,最后关闭整个系统

8、。图11设计总结通过此次课程设计,我发现程序存在的不足之处在于程序以文件方式储存,并且每个用户信息与用户的历史记录分别用一个文件来储存,如果这样的话一个用户就需要二个文件储存信息,那么一万个用户就需要用到二万个文件保存。这不但浪费内存而已在查找文件也会花费时间。重要的是,通过此次课程设计我深刻理解到编程员的心理。知道应如何在困难中一步一步发现问题并解决问题。知道了软件在程序设计中对界面和功能如何平衡。参考文献1陈维兴,林小茶.c+面向对象程序设计教程. 北京: 清华大学出1996.2004.2张国峰. C+程序设计实用教程. 北京: 清华大学出版社,1996. 3张松梅. C+语言教程. 电子

9、科技大学出版社,1993. 4阎龙. C程序员的C+指南. 北京航空航天大学出版社,1992.5王博. 面向对象的建模、设计技术与方法. 北京希望电脑公司,1990. 致 谢首先感谢我的指导老师朱红蕾,她在我的课设中提出了指导性的方案和框架,并指导我阅读相关资料和书籍,使我在不熟悉的领域中仍能迅速掌握新技术。 在这三周的面向对象课程设计中,对课本中所学的知识进一步理解和掌握,学会了如何把学到的知识用于解决实际问题,锻炼了自己动手的能力。在课程设计时遇到了很多的问题,在老师的帮助,和对各种资料的查阅中,将问题解决,培养了我自主动手,独立研究的能力,为今后在学习工作中能更好的发展打下了坚实的基础。

10、附录:程序源代码#include#include#include#include#include#include#includeusing namespace std;class Function;class Userpublic: void get(User& ); friend class Function; ostream &print(ostream &os); /friend ostream & operator(istream & i, User & u); void PassWord(); bool Login(User &); void SaveFile(User &); ve

11、ctor StrFunction; User() User(int A,string N,int F,string I,string Ad,int T):Accout(A),Name(N),Fmoney(F),ID(I),Address(Ad),Telephone(T)private: int Accout; string Name; int Fmoney; string ID; string Address; int Telephone; char Pword19; char Pword29;class Functionpublic: void Saving(User &); void Dr

12、awing(User &); void Balance(User &); void Record(Us private: int SaveAndDrawMoney;void Function:Saving(User &u) system(cls); coutnnntt*nendl; coutSaveAndDrawMoney; u.Fmoney+=SaveAndDrawMoney; strstream ss; string str2; ssstr2; string frist=Record+str2 +.txt; const char *RecordFile=frist.c_str(); ofs

13、tream outfile(RecordFile,ios:out|ios:app); outfilestr1SaveAndDrawMoneyendl; outfile.close(); outfile.clear(); coutnntt操作成功,单击任何键返回主菜单!; getch();void Function:Drawing(User &u) system(cls); coutnnntt*nendl; couttt请输入取款金额:; string str1(ntt现取RMB 钞- ); string str2; int k=0; while(kSaveAndDrawMoney; u.Fmo

14、ney -=SaveAndDrawMoney; if(u.Fmoney=0) system(cls); coutnnntt正在出炒,请稍等!endl; strstream ss; ssstr2; string frist=Record+str2 +.txt; const char *RecordFile=frist.c_str(); ofstream outfile(Reco outfilestr1SaveAndDraw Money=3) system(cls); cerrnnntt很抱歉,你重复输入错误多次endl ntt正在退卡中endl; exit(0); system(cls); u.

15、Fmoney +=SaveAndDrawMoney; cerrnnntt对不起,你输入的金额超出有效金额。endl ntt 请重新输入: ; coutnntt操作成功,单击任何键返回主菜单!; getch();void Function:Balance(User &u) system(cls); coutnnntt*nendl; couttt你当前的余额是:; coutttu.Fmoneyendl; coutntt*nendl; coutntt操作成功,单击任何键返回主菜单!; getch();void Function:Record(User &u) string str1,str2; sy

16、stem(cls); coutnnntt*nendl; couttt摘要币种钞汇存/取款金额endl; strstream ss; ssstr2; string frist=Record+str2 +.txt; const char *RecordFile=frist.c_str(); ifstream infile(RecordFile,ios:in); if(!infile) coutntt没有任何历史记录!endl; getch(); return ; while(!infile.eof() getline (infile,str1); coutnttstr1endl; coutntt*

17、nendl; coutntt操作成功,单击任何键返回主菜单!; getch();ostream &User:print(ostream &os) /mark system(cls); osnnntt*nendl; osntt用户卡号:Accoutendl; osntt姓名: Name endl; osntt账户金额:Fmoneyendl; osntt身份证号:IDendl; osntt地址: Address endl; osntt联系电话:Telephone endl; osntt密码: Pword1endl; osntt*nendl; coutntt操作成功,单击任何键返回主菜单!; get

18、ch(); return os;void User:SaveFile(User &u) int filename=u.Accout; string frist; string last(.txt); strstream ss; ssfrist; frist+=last; const char *UserID=frist.c_str();rdFile,ios:out|io ofstream outfile(UserID,ios:out |ios:trunc ); /outfile(*this); outfileAccout Name Fmoney ID Address Telephone Pwo

19、rd1endl; outfile.close();bool User:Login(User &u) int acc; string pwd; coutntt登陆用户:endl; coutacc; coutpwd; int filename=acc; string frist; string last(.txt); strstream ss; ssfrist; frist+=last; const char *UserID=frist.c_str(); ifstream infile(UserID,ios:in ); while (infile (*this) if (u.Accout = ac

20、c ) string str; str=Pword1; if(str= pwd) return true; return false;/*ostream & operator(ostream & o, const User & u) ou.Accout u.Name u.Fmoney u.ID u.Address u.Telephone u.Pword1 (istream & i, User & u) iu.Accout u.Name u.Fmoney u.ID u.Address u.Telephone u.Pword1 ; return i;void User:PassWord() int

21、 num=0; while(num3) coutntt请输入位储蓄密码:; for(int i=0;i8;i+) Pword1i=getch();cout*; Pword18=0; coutendl; coutntt请再一次确认密码:; for(int i=0;i8;i+) Pword2i=getch();cout*; coutendl; Pword28=0; if(strcmp(Pword1,Pword2)=0) coutnntt密码确认成功,单击任何键进入主菜单; getch(); return ; else num+; coutntt你输入的密码错误,请重新输入!nendl; if(nu

22、m=3) system(cls); cerrnnntt对不起,你三次输入不正确nendl tt感谢你的使用,再见! endl; exit(0); void User:get(User& u) system(cls); coutnnntt请输入用户信息:nendl; couttt*nendl; coutAccout; coutName; coutFmoney; coutID; coutAddress; coutTelephone; u.PassWord(); coutntt*nendl;void Sign() system(cls); coutnnnnnnttt谢谢您使用银行管理系统t nnendl; couttt*nendl; couttt 姓名: 谢道尔 nn tt 班级: 计算机班nn tt 学号: 200710214217nnendl; coutntt 已经成功退出endl ntt 欢迎你的光临! endl;char custom(User &u) char x; int k=0; system(cls);coutnnnttn tt n tt 欢迎使用储蓄管理系统 n tt n tt 请用户在使用前选择开户: n tt n tt 请选择: n tt 1:注册开户 n tt 2:用户登录

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1