C++课程设计面向对象课程设计报告__经典银行管理系统完整报告

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

C++课程设计****************************课程面向对象课程设计姓名陈会会院(系)计算机科学与工程学院专业年级计算机科学与技术100602班学号100602126指导教师姜虹日期2009年8月31日-2009年9月13日-1-目录1、课设目的…………………………………………………………..22、需求与功能分析22、系统总体框架34、模块设计与分析35、类的设计与分析56、功能测试77、程序源代码148、心得体会...............................................25-2-一、课设目的:课程设计的目的是总结及运用一学期来所学的知识,训练我们灵活应用所学C++知识,独立完成问题分析、总结设计、详细设计和编程实现等软件开发全过程的综合实践能力。巩固、深化理论知识,提高编程水平,并在此过程中培养我们严谨的科学态度和良好的工作作风及团结协作的精神。二、需求与功能分析随着社会经济的发展,信息化程度的不断深入,银行的传统业务己愈来愈不能满足银行客户的需要。现今,人们的金融意识、科技意识己经有了很大的提高,在紧张忙碌的生活中,己越来越来不习惯每月奔忙于各银行营业柜台之问去排队缴各种各样的费用了;同时,各种经营单位如电信、移动、供电、煤气、自来水、证券等等一是为了提高服务质量、方便客户,二是为了减轻自己日趋繁重的工作量,纷纷委托银行为其开展代收代付业务:同时,随着我国加入世贸组织的日益临近,我国的银行业将面临更加激烈的同业竞争,如何提供更多的金融产品和更优质的服务,如何吸引更多的客户,如何利用计算机技术加强银行帐户信息管理、进行银行业务再造,提高银行的工作效率和业务竟争能力是摆在各家银行面前的一个迫切需要解诀的问题。近几年来,各商业银行加快了与社会各业的合作,利用自身的网点优势和业务特点,为其提供各种高效、快捷的代收代付业务,也就是中间代理业务,目前以与广大人民群众生活密切相关的各项缴费业务如水电费、电话费、手机费等代收业务为主,这些业务开展方式多种多样,但一般都离不开计算机的高效管理支持。随着代理业务不断发展,业务品种越来越多,各项业务做法互有差异,这就对银行的电子化水平和相应的管理水平提出了更高的要求。如何利用电子化的手段构建一个高效统一的、通用灵活的系统来管理各种各样的业务,是每个商业银行所要研究的课题。支持决策系统的,需要在数据库的基础上,进行联机分析处理,每次处理的数据量大,响应时间长。特别是银行每天要处理大量的存取款事件,做好存取款是银行工作重要的环节,然而要有效处理必须要有良好的程序和数据管理系统来建立一个良好的软件-3-系统来实现快速、有效、准确、安全的处理银行事物。主要用于银行的储蓄卡管理系统,它可以帮助我们有效、准确、并且高效实现的完成存取事件。此系统操作方便效率、安全性高,只要客户开户并设定好密码就可以轻松的实现存取款。系统实现的主要有储蓄卡开户管理、存取款管理、用户查询历史数据显示、注销等功能。储蓄卡开户管理模块:卡号、姓名、开户金额、身份证号、地址、电话、密码、确认密码和保存组成。(开户金额必须是数字,密码和确认密码必须一样是六位数字)*注销模块:一旦注销该卡号就不存在且余额提醒你取出。通过该银行账户管理系统地运行,使办公人员可以轻松快捷的完成对账户管理的任务,提高账目管理效率,使银行的账目管理工作系统化、规范化、自动化。该银行帐目管理信息系统,优点是设计过程思路清晰、模块划分简洁,设计各阶段分工明确。经过实践证明,该划分是合理的,极大得提高了本系统的实现。三、系统总体框架银行管理系统存钱页面取款页面余额页面修改密码注销页面登录界面注册开户主界页面注销退出-4-图1-1四、模块设计与分析储蓄卡开户管理模块:3.1登录页面输入卡号和密码,根据用户输入的卡号和密码,到后台文件查询,若正确则登录成功,并保存卡好信息已备后用。若卡号存在和密码不匹配或无该卡号已经注销,提示该卡号已存在或已注销,保持界面三次不变等待用户的重新输入。3.2主界面页面主要导航栏有:欢迎使用储蓄卡管理(存款、取款、修改密码、转账功能、注销退出)3.3储蓄卡开户页面提供开户界面,由用户输入新储蓄卡的所有信息,将该信息保存到文件中,并将开户金额作为该卡的第一次存款记录存人文件。3.4存钱页面从登录界面得到卡号,并提供数据输入界面,等待用户的输入存款金额。从后台数据库中找到该用户余额记录,修改余额,并将该存款事件的相应信息写人数据库,同时将存钱的金额显示在页面上。3.5取款页面从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上,。3.6注销页面从关闭文件,状态为注销,最后关闭整个系统。列举取款模块进行分析:voidconsumer::fetchmoney(){floatm;charch;do{-5-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){-6-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;};表1comsumer类说明表名称属性说明ID数据成员用户账户数据name数据成员用户姓名money数据成员用户首次金额in数据成员用户身份证号address数据成员用户地址number数据成员用户电话Passwd数据成员用户密码savemoney()成员方法存钱fetchmoney()成员方法取钱change_passwd()成员方法修改密码get_money()成员方法卡卡转账2.YH类YH类主要实现用户的各种功能:相关代码:-7-classYH//银行类{public:voidset_account();//银行开户功能voiddel_account();//注销账户功能voidtransfer(int);//转账功能voidenter_account();//进入用户个人信息功能voidaddmoney(int,float);//存款功能voidexitYH();//退出系统voidfunctionshow();voidsave();voidload();//功能界面protected:consumer*account[20];staticintacnum;//账户数};表1YH类说明表名称属性说明acnum数据成员账户数set_account()成员方法开户功能del_account()成员方法注销账户功能transfer()成员方法转账功能functionshow()成员方法主界面显示功能addmoney()成员方法存钱功能exitYH()成员方法退出系统功能六、功能测试6.1首页:图6-1:-8-6.2储蓄卡开户页面图6-2:-9-6.3主界面页面主要导航栏有:欢迎使用储蓄卡管理(查看帐户信息、存款、取款、修改密码、转账、返回上一菜单)图6-3:-10-6.4存钱页面图6-4:6.5取款页面从登录界面得到卡号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款,或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上。-11-输入取款金额:图6-5:当取款金额大于现有金额:图6-6:-12-当取款金额小于或等于现有金额:图6-7:-13-6.6修改密码页面当两次输入的密码相同时:图6-8:当两次输入的密码不相同时:图6-9:6.7卡卡转帐图6-10:-14-6.8用户信息图6-11:6.9销户页面图6-12:-15-6.10退出系统页面图6-13七、程序源代码#includeiostream#includestring#includefstreamusingnamespacestd;classconsumer;classYH//银行类{-16-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(){returnpas

1 / 27
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功