c++银行账户管理课程设计_第1页
c++银行账户管理课程设计_第2页
c++银行账户管理课程设计_第3页
c++银行账户管理课程设计_第4页
c++银行账户管理课程设计_第5页
已阅读5页,还剩13页未读 继续免费阅读

下载本文档

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

文档简介

1、精品 料推荐jingchu university of technologyc+银行账户管理课程设计报告学院: 计算机工程学院班 级:09级计算机科学与技术1 班学生姓名 :学 号:2009404010125设计地点(单位) :a5-101设计 题目:银行账户管理程序完成日期: 2011 年 12 月 25 日指导教师评语 : _成绩 ( 五级记分制 ):_ _ _教师签名:_ _1精品 料推荐目 录一、 思想03二、模 与分析03三、程序 介 04四、框架 构 04五、程序代 05六、 数据14七、数据 14八、 程 16九、 程 教材及主要参考 料162精品 料推荐一、设计思想定义一个用户

2、类customer 和一个银行类yh,程序运行时,可以由用户选择进行开户、登录、取款、存款、修改密码、转账、销户操作,用户销户后账号被回收,并且该账号可以继续分配给其它账户,不允许用户透支, 根据姓名或账号可以进行用户的信息查询, 所有的账户信息应存放到一个文件中,可以随时的访问和更新。二、模块设计与分析1 登录页面:输入帐号和密码,根据用户输入的帐号和密码,到后台文件查询,若正确则登录成功, 并保存卡好信息已备后用。 若帐号存在和密码不匹配或无该帐号已经注销,提示该帐号已存在或已注销。2 主界面页面:主要导航栏有存款、取款、账户信息、注销、注销、返回上一步。3. 开户页面:提供开户界面, 由

3、用户输入新账户的信息, 将该信息保存到文件中,并将开户金额作为该卡的第一次存款记录存人文件。4 存钱页面:从登录界面得到帐号,并提供数据输入界面,等待用户的输入存款金额,同时将存钱的金额显示在页面上。5 取款页面:从登录界面得到帐号,并提供数据输入界面,等待用户输入取款金额,如果取款金额大于该用户卡上的余额则不能取款, 或者将新的余额写人文件,并将本次取款事件写入文件同时将取钱的金额显示在页面上。6 账户信息页面:从登录界面得到帐号,把本人显示到界面中。7 转账页面:从登录界面得到帐号,输入要转入的帐号,在输入金额,显示在页面上,如果金额超过余额将操作失败。8注销页面:从关闭文件,状态为注销,

4、最后关闭整个系统。3精品 料推荐三、程序设计介绍系统由 2 个类构成, yh(银行类)和 consumer(客户类),consumer(客户类)是 yh(银行类)的公有继承类。 yh(银行类)中有实现登陆系统,开户,销户,转账,退出系统等功能函数, consumer(客户类)中有实现存钱,取钱,修改个人账号密码,显示个人账号信息等功能函数。因为consumer(客户类)是 yh(银行类)的公有继承类,所以,一个用户只需创建一个consumer(客户类)对象,当用户进行开户,销户等操作时,可以直接调用 yh(银行类)的成员函数。银行类中的函数:void set_account();/银行开户功能

5、void del_account();/注销账户功能void transfer(int);/转账功能void enter_account(); /进入用户个人信息功能void addmoney(int,float);/ 存款功能void exityh();/退出系统四、框架结构图银行管理系统登录界面注册开户主界页面注销退出存取转修查钱款账改看页页页密信面面面码息4精品 料推荐五、程序代码#include#include #includeusing namespace std;class consumer;class yh/银行类public:void set_account();/ 银行开户功

6、能void del_account();/注销账户功能void transfer(int);/转账功能void enter_account(); / 进入用户个人信息功能void addmoney(int,float);/ 存款功能void exityh();/退出系统void functionshow();void save();void load();/功能界面protected:consumer *account20;staticint acnum;/ 账户数;class consumer:public yh/ 用户类 ,继承银行类的属性public:friend class yh;co

7、nsumer(int id,string name,string password,float m)id=id;name=name;money=m;passwd=password;consumer()id=0;name=0;money=0;passwd=0;int get_id()return id;void savemoney();/取钱string get_passwd()return passwd;/取得密码void display();void fetchmoney();/取钱void change_passwd();void add_money(float);void dec_mon

8、ey(float);float get_money();/ 卡卡转帐private:5精品 料推荐int id; / 开户帐号string passwd; / 用户密码string name; / 用户姓名float money;/开户金额;void yh:save()ofstream ofile(bankdat.dat,ios:out);ofstream outfile(bankdat.dat,ios:out);int n=0;outfileacnum;for(n=0;nacnum;n+)outfileid;outfilemoney;outfilename;outfilepasswd;out

9、file.close();/* 读入用户信息功能实现*/void yh:load()ifstream infile(bankdat.dat,ios:in);if(!infile)cerr 读取错误 ,无资料中 !acnum;for(n=0;nid;infilem;infilenam;infilepassw;accountn-passwd;consumer * acc = new consumer(id,nam,passw,m);accountn = acc;infile.close();cout 读取资料正常!endl;6精品 料推荐/* 转账功能实现 */void yh:transfer(i

10、nt x)int id;coutid;int flag = 1;int i = 0;while(iget_id() flag = 0; elsei+;if(flag)cout 帐号不存在 !endlendl;return ;float b;coutendlb;while(b=0)cout 请输入正确的数字!endl;coutb;if(accountx-get_money()b) cout对不起 ,金额不够 !dec_money(b);accounti-add_money(b);return;/* 账户金额计算 */void consumer:add_money(float x)money=x+

11、money;void consumer:dec_money(float x)money=money-x;void yh:addmoney(int x,float y)accountx-money=accountx-money-y;float consumer:get_money()return money;7精品 料推荐void main()yh yh;yh.functionshow();/* 主界面显示 */void yh:functionshow()int n;dosystem(cls); load();coutendl 请输入相应的操作序号进行操作:endl;cout endl;cout

12、 endl;cout 1. 开户 endl;cout endl;cout 2.账户登录 endl;cout endl;cout 3.账户注销 endl;cout endl;cout 4.退出系统 endl;cout endl;cout endl;coutn;while(n4)cout 操作错误,请输入正确的操作序号!endl;coutn;switch(n)case 1: set_account();/开户break;case 2:enter_account();/登录break;case 3: del_account();/注销break;case 4: exityh();/ 退出break;

13、cin.get();8精品 料推荐while(true);void yh:enter_account()int id;coutid;int flag = 1;int i = 0;/_page_break_while(iget_id() flag = 0; elsei+;if(flag)cout 帐号不存在 !endlendl;return;coutpassw;if(passw!=accounti-get_passwd() return;accounti-display();cin.get();cin.get();int n;dosystem(cls);cout 请选择下列操作: endl;co

14、ut endl;cout endl;cout 1.查看账户信息 endl;cout endl;cout 2.取款 endl;cout endl;cout 3.存款 endl;cout endl;cout 4.修改密码 endl;cout endl;cout 5.转账 endl;cout endl;cout 6.返回上一菜单 endl;cout endl;cout endl;coutn;9精品 料推荐switch(n)case 1: accounti-display();break;case 2: accounti-fetchmoney();save();break;case 3:account

15、i-savemoney();save();break;case 4:accounti-change_passwd();save();break;case 5:transfer(i);save();break;case 6:return;cin.get();cin.get();while(1);void yh:set_account()int id;string nam;string passw;float m;coutendlid;coutendlnam;coutendlpassw;coutendlm;while(m=0)cout 请输入正确的数字!m;consumer * acc = new

16、 consumer(id,nam,passw,m);accountacnum = acc;cout 开户成功 !endlendl;acnum+;save();cin.get();return;void yh:del_account()10精品 料推荐int id;coutendlid;int flag = 1;int i = 0;while(iget_id()flag = 0;elsei+;if(flag)cout 该帐号不存在,请重新输入!endl;return;for(int j=i;jacnum;j+)accountj = accountj+1;accountacnum-1=null;a

17、cnum-;cout 你的账号已注销!endlendl;save();cin.get();return;void consumer:change_passwd()string pwd,repwd;coutpwd;coutrepwd;if(pwd!=repwd)cout 你输入的两次密码不一样,按输入键返回上一层菜单!endl;elsecout 密码修改成功,请牢记!endl;cin.get();11精品 料推荐void consumer:fetchmoney()float m;char ch;docoutendl 输入取款金额 :m;while(m=0)cout 请输入正确的数字!endl;c

18、outm;if(moneym)cout 对不起,你的余额不足!endl;elsemoney=money-m;coutendl 操作成功,请收好钱!endl;cout 是否要继续该项操作:(y/n) endl;coutch;while(ch!=n&ch!=n&ch!=y&ch!=y)/选择错误时判定coutch;while(ch=y|ch=y);void consumer:savemoney()/ 存钱函数功能实现float c;char ch;do12精品 料推荐coutendl 请输入要存入的金额:c;while(c=0)cout 输入错误 ,请重新输入 !endl;coutc;money=

19、money+c;cout 操作已成功 !endl;cout 是否要继续该项操作:(y/n) endl;coutch;while(ch!=n&ch!=n&ch!=y&ch!=y)coutch;while(ch=y|ch=y);int yh:acnum=0;void consumer:display()/ 用户信息界面system(cls);cout#endl;cout#endl;cout#用户姓名: nameendl;cout#endl;cout#帐号:idendl;cout#endl;cout#余额 :moneyendl;cout#endl;cout#按输入键回到上一菜单endl;cout#endl;cout#endl;cout ;void yh:exityh()/退出系统coutendl 感谢您对本银行的支持 ,欢迎下次光临 !endl; exit(0);13精品 料推荐六、测

温馨提示

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

评论

0/150

提交评论