您好,欢迎访问三七文档
当前位置:首页 > 办公文档 > 总结/报告 > 银行储蓄管理系统实验报告
C++面向对象程序设计课程设计报告设计题目:银行储蓄管理系统学生姓名:_____________学号:_______________班级:___指导教师:______________2014年6月19日目录一、课设目的……………………………..1二、需求分析………………………………1三、程序的主要功能………………………1四、系统总体框架………………………….1五、模块设计与分析……………………….2六、类的设计与分析………………………3七、存在的不足与解决方法………………5八、功能测试………………………………5九、课设总结………………………………11一、课设目的课程设计的目的是总结及运用一学期来所学的知识,训练我们灵活应用所学C++知识,独立完成问题分析、总结设计、详细设计和编程实现等软件开发全过程的综合实践能力。巩固、深化理论知识,提高编程水平,并在此过程中培养我们严谨的科学态度和良好的工作作风。二、需求分析:随着社会经济的发展,信息化程度的不断深入,银行的传统业务已不能满足客户的需求。现今,人们的科技意识已经有了很大的提高,在紧张忙碌的生活中已越来不习惯每天奔波于银行营业柜台去办理各种业务,利用电子化的手段构建一个高效统一的、通用灵活的系统来管理各种各样的业务,是当前每个商业银行都要研究的课题。因此如何应用计算机技术加强银行账户管理是当前迫切需要解决的一个问题。所以本次课程设计是模拟银行账户的管理,开发一个银行个人账户管理系统。设计思想是一切为使用者着想,操作尽量简单明了,努力做到每一个用户都可以使用这个系统来办理自己的业务。并且通过该银行账户管理系统地运行,可以使办公人员轻松快捷的完成对账户管理的任务,提高招募管理效率,是银行的账目管理工作系统化、规范化、自动化。三、程序的主要功能:主要用于银行的储蓄卡管理系统,它可以帮组我们有效、准确、并且高效实现的完成存取事件。系统操作方便效率、安全性高、只要开户并设定好密码就可以轻松的实现存取款。系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。储蓄卡开户管理模块:卡号、姓名、开户金额、身份证号、地址、电话、密码、确认密码和保存组成。(开户金额必须是数字,密码和确认密码必须一样是六位数字)注销模块:一旦注销卡号就不存在且余额提醒你取出。四、系统总体框架:银行管理系统存钱页面取款页面余额页面修改密码注销页面登录界面注册开户主界页面注销退出五、模块设计与分析:储蓄卡开户管理模块登录页面:输入卡号和密码,根据用户输入的卡号和密码,到后台文件查询,若正确则登录成功,并保存卡好信息已备后用。若卡号存在和密码不匹配或无该卡号已经注销,提示该卡号已存在或已注销,保持界面三次不变等待用户的重新输入。主界面页面:主要导航栏有[欢迎使用储蓄卡管理(存款、取款、修改密码、转账功能、注销退出)]储蓄卡开户页面:提供开户界面,由用户输入新储蓄卡的所有信息,将该信息保存到文件中,并将开户金额作为该卡的第一次存款记录存人文件。存钱页面:从登录界面得到卡号,并提供数据输入界面,等待用户的输入存款金额。从后台数据库中找到该用户余额记录,修改余额,并将该存款事件的相应信息写人数据库,同时将存钱的金额显示在页面上。取款页面:从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上,。注销页面:从关闭文件,状态为注销,最后关闭整个系统。列举取款模块进行分析:voidconsumer::fetchmoney(){floatm;charch;do{coutendl输入取款金额:¥endl;cinm;while(m=0){cout请输入正确的数字!endl;cout→;cinm;}if(moneym){cout对不起,你的余额不足!endl;}else{money=money-m;coutendl操作成功,请收好钱!endl;}cout是否要继续该项操作:(Y/N)endl;cout→;cinch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y')//选择错误时判定{cout→;cinch;}}while(ch=='y'||ch=='Y');}在取款页面中,输入取款金额并对取款金额与存款余额进行比较,如果取款金额小于零,请输入正确的数字;如果取款金额大于存款金额,对不起,您的余额不足;如果取款金额小于存款余额的话就执行,并保存记录。六、类的设计与分析1.comsumer类classcomsumer主要制定用户的成员数据,并进行登录与保存功能:相关代码:classconsumer:publicYH//用户类,继承银行类的属性{public:friendclassYH;consumer(intid,stringName,intNumber,doubleIN,stringCompany,stringAddress,stringPassWord,floatm){ID=id;name=Name;number=Number;in=IN;company=Company;address=Address;money=m;passwd=PassWord;}consumer(){ID=0;name='0';number=0;in=0;company='0';address='0';money=0;passwd='0';}intget_id(){returnID;}voidsavemoney();//取钱stringget_passwd(){returnpasswd;}//取得密码voiddisplay();voidfetchmoney();//取钱voidchange_passwd();voidadd_money(float);//计算余额voiddec_money(float);//计算余额floatget_money();//卡卡转帐private:intID;//开户帐号stringpasswd;//用户密码stringname;//用户姓名floatmoney;//开户金额intnumber;stringcompany;stringaddress;doublein;};名称属性说明ID数据成员用户账户数据name数据成员用户姓名money数据成员用户首次金额in数据成员用户身份证号address数据成员用户地址number数据成员用户电话Passwd数据成员用户密码savemoney()成员方法存钱fetchmoney()成员方法取钱change_passwd()成员方法修改密码get_money()成员方法卡卡转账comsumer类说明表2.YH类YH类主要实现用户的各种功能:classYH//银行类{public:voidset_account();//银行开户功能voiddel_account();//注销账户功能voidtransfer(int);//转账功能voidenter_account();//进入用户个人信息功能voidaddmoney(int,float);//存款功能voidexitYH();//退出系统voidfunctionshow();voidsave();voidload();//功能界面protected:consumer*account[20];staticintacnum;//账户数};名称属性说明acnum数据成员账户数set_account()成员方法开户功能del_account()成员方法注销账户功能transfer()成员方法转账功能functionshow()成员方法主界面显示功能addmoney()成员方法存钱功能exitYH()成员方法退出系统功能YH类说明表七、存在的不足与解决方法在这设计的过程里,我们遇到了大大小小各个问题,例如:(1)问题:规划设计做的不够好,没有把类和类的数据成员、成员函数给搞清楚,就急着下手编程,结果把程序搞的乱七八糟的。解决:重新认真细心规划设计好所需要的类,弄清楚各个类的作用,在进行编程。(2)问题:由于不够细心,程序总是出些较低级的错误,例如漏写分号,忘括号等。解决:做任何事,都需认真细心,注意好每一步骤(3)问题:当我们的程序的框架基本搭好,准备填写内容时,却迟迟未能下手,不知道从何写起。解决:重温课本,请教同学和老师。这才知道自己的不足之处,以后定要好好学习,要有坚持不懈和锲而不舍的精神。八:源代码:#includeiostream#includestring#includefstreamusingnamespacestd;classconsumer;classYH//银行类{public:voidset_account();//银行开户功能voiddel_account();//注销账户功能voidtransfer(int);//转账功能voidenter_account();//进入用户个人信息功能voidaddmoney(int,float);//存款功能voidexitYH();//退出系统voidfunctionshow();voidsave();voidload();//功能界面protected:consumer*account[20];staticintacnum;//账户数};classconsumer:publicYH//用户类,继承银行类的属性{public:friendclassYH;consumer(intid,stringName,intNumber,doubleIN,stringCompany,stringAddress,stringPassWord,floatm){ID=id;name=Name;number=Number;in=IN;company=Company;address=Address;money=m;passwd=PassWord;}consumer(){ID=0;name='0';number=0;in=0;company='0';address='0';money=0;passwd='0';}intget_id(){returnID;}voidsavemoney();//取钱stringget_passwd(){returnpasswd;}//取得密码voiddisplay();voidfetchmoney();//取钱voidchange_passwd();voidadd_money(float);//计算余额voiddec_money(float);//计算余额floatget_money();//卡卡转帐private:intID;//开户帐号stringpasswd;//用户密码stringname;//用户姓名floatmoney;//开户金额intnumber;stringcompany;stringaddress;doublein;};voidYH::save(){ofstreamofile(bankdat.dat,ios::out);//以输出方式打开文件ofstreamoutfile(bankdat.dat,ios::out);//以输出方式打开文件bankdat.dat接收从内存输出的数据intn=0;outfileacnum;for(n=0;nacnum;n++){outfileaccount[n]-ID;//把信息写入磁盘文件bankdat.datoutfileaccount[n]-money;outfileaccount[n]-name;outfileaccount[n]-passwd;outfileaccount[n]-number;outfileaccount[n]-company;outfileaccou
本文标题:银行储蓄管理系统实验报告
链接地址:https://www.777doc.com/doc-1862515 .html