c++銀行賬戶(hù)管理課程設(shè)計(jì)_第1頁(yè)
c++銀行賬戶(hù)管理課程設(shè)計(jì)_第2頁(yè)
c++銀行賬戶(hù)管理課程設(shè)計(jì)_第3頁(yè)
c++銀行賬戶(hù)管理課程設(shè)計(jì)_第4頁(yè)
c++銀行賬戶(hù)管理課程設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩8頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、精選優(yōu)質(zhì)文檔-傾情為你奉上JINGCHU UNIVERSITY OF TECHNOLOGYC+銀行賬戶(hù)管理課程設(shè)計(jì)報(bào)告學(xué) 院:計(jì)算機(jī)工程學(xué)院 班 級(jí):09級(jí)計(jì)算機(jī)科學(xué)與技術(shù)1班學(xué)生姓名: 學(xué) 號(hào): 設(shè)計(jì)地點(diǎn)(單位): A5-101 設(shè) 計(jì) 題 目: 銀行賬戶(hù)管理程序 完成日期:2011年 12月 25日 指導(dǎo)教師評(píng)語(yǔ): _ _ _ 成績(jī)(五級(jí)記分制):_ _ _ 教 師 簽 名:_ _目 錄一、設(shè)計(jì)思想03二、模塊設(shè)計(jì)與分析03 三、程序設(shè)計(jì)介紹04四、框架結(jié)構(gòu)圖04五、程序代碼05六、測(cè)試數(shù)據(jù)14七、數(shù)據(jù)調(diào)試14八、課程設(shè)計(jì)總結(jié)16九、課程設(shè)計(jì)教材及主要參考資料16一、設(shè)計(jì)思想定義一個(gè)用戶(hù)類(lèi)

2、customer和一個(gè)銀行類(lèi)YH,程序運(yùn)行時(shí),可以由用戶(hù)選擇進(jìn)行開(kāi)戶(hù)、登錄、取款、存款、修改密碼、轉(zhuǎn)賬、銷(xiāo)戶(hù)操作,用戶(hù)銷(xiāo)戶(hù)后賬號(hào)被回收,并且該賬號(hào)可以繼續(xù)分配給其它賬戶(hù),不允許用戶(hù)透支,根據(jù)姓名或賬號(hào)可以進(jìn)行用戶(hù)的信息查詢(xún),所有的賬戶(hù)信息應(yīng)存放到一個(gè)文件中,可以隨時(shí)的訪問(wèn)和更新。二、模塊設(shè)計(jì)與分析1 登錄頁(yè)面:輸入帳號(hào)和密碼,根據(jù)用戶(hù)輸入的帳號(hào)和密碼,到后臺(tái)文件查詢(xún),若正確則登錄成功,并保存卡好信息已備后用。若帳號(hào)存在和密碼不匹配或無(wú)該帳號(hào)已經(jīng)注銷(xiāo),提示該帳號(hào)已存在或已注銷(xiāo)。2 主界面頁(yè)面:主要導(dǎo)航欄有存款、取款、賬戶(hù)信息、注銷(xiāo)、注銷(xiāo)、返回上一步。3. 開(kāi)戶(hù)頁(yè)面:提供開(kāi)戶(hù)界面,由用戶(hù)輸入新賬戶(hù)

3、的信息,將該信息保存到文件中,并將開(kāi)戶(hù)金額作為該卡的第一次存款記錄存人文件。4 存錢(qián)頁(yè)面:從登錄界面得到帳號(hào),并提供數(shù)據(jù)輸入界面,等待用戶(hù)的輸入存款金額,同時(shí)將存錢(qián)的金額顯示在頁(yè)面上。5 取款頁(yè)面:從登錄界面得到帳號(hào),并提供數(shù)據(jù)輸入界面,等待用戶(hù)輸入取款金額,如果取款金額大于該用戶(hù)卡上的余額則不能取款,或者將新的余額寫(xiě)人文件,并將本次取款事件寫(xiě)入文件同時(shí)將取錢(qián)的金額顯示在頁(yè)面上。6 賬戶(hù)信息頁(yè)面:從登錄界面得到帳號(hào),把本人顯示到界面中。7 轉(zhuǎn)賬頁(yè)面:從登錄界面得到帳號(hào),輸入要轉(zhuǎn)入的帳號(hào),在輸入金額,顯示在頁(yè)面上,如果金額超過(guò)余額將操作失敗。8 注銷(xiāo)頁(yè)面:從關(guān)閉文件,狀態(tài)為注銷(xiāo),最后關(guān)閉整個(gè)系統(tǒng)

4、。三、程序設(shè)計(jì)介紹系統(tǒng)由2個(gè)類(lèi)構(gòu)成,YH(銀行類(lèi))和Consumer(客戶(hù)類(lèi)),Consumer(客戶(hù)類(lèi))是YH(銀行類(lèi))的公有繼承類(lèi)。YH(銀行類(lèi))中有實(shí)現(xiàn)登陸系統(tǒng),開(kāi)戶(hù),銷(xiāo)戶(hù),轉(zhuǎn)賬,退出系統(tǒng)等功能函數(shù),Consumer(客戶(hù)類(lèi))中有實(shí)現(xiàn)存錢(qián),取錢(qián),修改個(gè)人賬號(hào)密碼,顯示個(gè)人賬號(hào)信息等功能函數(shù)。因?yàn)镃onsumer(客戶(hù)類(lèi))是YH(銀行類(lèi))的公有繼承類(lèi),所以,一個(gè)用戶(hù)只需創(chuàng)建一個(gè)Consumer(客戶(hù)類(lèi))對(duì)象,當(dāng)用戶(hù)進(jìn)行開(kāi)戶(hù),銷(xiāo)戶(hù)等操作時(shí),可以直接調(diào)用YH(銀行類(lèi))的成員函數(shù)。銀行類(lèi)中的函數(shù):void set_account(); /銀行開(kāi)戶(hù)功能void del_account(); /注銷(xiāo)

5、賬戶(hù)功能void transfer(int); /轉(zhuǎn)賬功能void enter_account(); /進(jìn)入用戶(hù)個(gè)人信息功能void addmoney(int,float);/存款功能void exitYH();/ 退出系統(tǒng)銀行管理系統(tǒng)存錢(qián)頁(yè)面取款頁(yè)面轉(zhuǎn)賬頁(yè)面頁(yè)面修改密碼查看信息登錄界面注冊(cè)開(kāi)戶(hù)主界頁(yè)面注銷(xiāo)退出四、框架結(jié)構(gòu)圖五、程序代碼#include<iostream>#include <string>#include<fstream>using namespace std;class consumer;class YH /銀行類(lèi)public:void s

6、et_account();/銀行開(kāi)戶(hù)功能void del_account(); /注銷(xiāo)賬戶(hù)功能void transfer(int); /轉(zhuǎn)賬功能void enter_account(); /進(jìn)入用戶(hù)個(gè)人信息功能void addmoney(int,float);/存款功能void exitYH();/ 退出系統(tǒng)void functionshow();void save();void load();/ 功能界面protected: consumer *account20; static int acnum;/賬戶(hù)數(shù);class consumer:public YH/用戶(hù)類(lèi),繼承銀行類(lèi)的屬性publ

7、ic: friend class YH; consumer(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();/ 取錢(qián) string get_passwd()return passwd;/ 取得密碼 void display(); void fetchmoney(); /取錢(qián) voi

8、d change_passwd(); void add_money(float); void dec_money(float); float get_money();/卡卡轉(zhuǎn)帳private: int ID; /開(kāi)戶(hù)帳號(hào) string passwd; / 用戶(hù)密碼 string name; / 用戶(hù)姓名 float money; /開(kāi)戶(hù)金額;void YH:save()ofstream ofile("bankdat.dat",ios:out);ofstream outfile("bankdat.dat",ios:out);int n=0;outfile&

9、lt;<acnum<<" "for(n=0;n<acnum;n+)outfile<<accountn->ID<<" "outfile<<accountn->money<<" "outfile<<accountn->name<<" "outfile<<accountn->passwd<<" "outfile.close(); /*讀入用戶(hù)信息功能實(shí)現(xiàn)*/v

10、oid YH:load()ifstream infile("bankdat.dat",ios:in);if(!infile)cerr<<"讀取錯(cuò)誤,無(wú)資料中!"<<endl;return;int n=0;int id,m;string nam,passw;infile>>acnum;for(n=0;n<acnum;n+)infile>>id;infile>>m;infile>>nam;infile>>passw;accountn->passwd;consume

11、r * acc = new consumer(id,nam,passw,m); accountn = acc; infile.close();cout<<"讀取資料正常!"<<endl;/*轉(zhuǎn)賬功能實(shí)現(xiàn)*/void YH:transfer(int x)int id; cout<<"請(qǐng)輸入帳號(hào):" cin>>id; int flag = 1; int i = 0; while(i<acnum)&&(flag) if(id=accounti->get_id() flag = 0; e

12、lse i+; if(flag) cout<<"帳號(hào)不存在!"<<endl<<endl; return ; float b; cout<<endl<<"請(qǐng)輸入你要轉(zhuǎn)帳的金額:" cin>>b; while(b<=0) cout<<"請(qǐng)輸入正確的數(shù)字!"<<endl;cout<<""cin>>b; if(accountx->get_money()<b) cout<<&q

13、uot;對(duì)不起,金額不夠!"<<endl; else accountx->dec_money(b);accounti->add_money(b);return;/*賬戶(hù)金額計(jì)算*/void consumer:add_money(float x)money=x+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()retu

14、rn money;void main()YH yh;yh.functionshow();/*主界面顯示*/void YH:functionshow() int n;dosystem("cls"); load();cout<<endl<<"請(qǐng)輸入相應(yīng)的操作序號(hào)進(jìn)行操作:"<<endl;cout<<""<<endl;cout<<" "<<endl;cout<<" 1. 開(kāi)戶(hù) "<<endl;c

15、out<<" "<<endl;cout<<" 2.賬戶(hù)登錄 "<<endl;cout<<" "<<endl;cout<<" 3.賬戶(hù)注銷(xiāo) "<<endl;cout<<" "<<endl;cout<<" 4.退出系統(tǒng) "<<endl;cout<<" "<<endl;cout<<&q

16、uot;"<<endl;cout<<""cin>>n; while(n<1|n>4) cout<<"操作錯(cuò)誤,請(qǐng)輸入正確的操作序號(hào)!"<<endl; cout<<"" cin>>n; switch(n) case 1: set_account();/開(kāi)戶(hù) break; case 2:enter_account();/登錄break; case 3: del_account();/注銷(xiāo) break; case 4: exitYH()

17、;/退出 break; cin.get();while(true);void YH:enter_account()int id; cout<<"請(qǐng)輸入帳號(hào):" cin>>id; int flag = 1; int i = 0; /_page_break_while(i<acnum)&&(flag) if(id=accounti->get_id() flag = 0; else i+; if(flag) cout<<"帳號(hào)不存在!"<<endl<<endl; retur

18、n; cout<<"請(qǐng)輸入密碼:"string passw;cin>>passw;if(passw!=accounti->get_passwd() return;accounti->display();cin.get();cin.get();int n;dosystem("cls"); cout<<"請(qǐng)選擇下列操作:"<<endl;cout<<""<<endl;cout<<" "<<end

19、l;cout<<" 1.查看賬戶(hù)信息 "<<endl;cout<<" "<<endl;cout<<" 2.取款 "<<endl;cout<<" "<<endl;cout<<" 3.存款 "<<endl;cout<<" "<<endl;cout<<" 4.修改密碼 "<<endl;cout&l

20、t;<" "<<endl;cout<<" 5.轉(zhuǎn)賬 "<<endl;cout<<" "<<endl;cout<<" 6.返回上一菜單 "<<endl;cout<<" "<<endl;cout<<""<<endl;cout<<""cin>>n;switch(n)case 1: accounti-&g

21、t;display();break;case 2: accounti->fetchmoney();save();break;case 3:accounti->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; c

22、out<<endl<<"請(qǐng)輸入開(kāi)戶(hù)號(hào):" cin>>id; cout<<endl<<"請(qǐng)輸入開(kāi)戶(hù)人姓名:" cin>>nam; cout<<endl<<"請(qǐng)輸入開(kāi)戶(hù)密碼:" cin>>passw; cout<<endl<<"請(qǐng)輸入存入金額:" cin>>m; while(m<=0) cout<<"請(qǐng)輸入正確的數(shù)字!"<<en

23、dl;cin>>m; consumer * acc = new consumer(id,nam,passw,m); accountacnum = acc; cout<<"開(kāi)戶(hù)成功!"<<endl<<endl; acnum+;save();cin.get();return;void YH:del_account() int id; cout<<endl<<"請(qǐng)輸入你要注銷(xiāo)的帳戶(hù)號(hào):" cin>>id;int flag = 1; int i = 0; while(i<a

24、cnum)&&(flag) if(id = accounti->get_id() flag = 0; else i+; if(flag) cout<<"該帳號(hào)不存在,請(qǐng)重新輸入!"<<endl; return; for(int j=i;j<acnum;j+) accountj = accountj+1; accountacnum-1=NULL; acnum-; cout<<"你的賬號(hào)已注銷(xiāo)!"<<endl<<endl; save();cin.get();return;

25、 void consumer:change_passwd()string pwd,repwd;cout<<"請(qǐng)輸入新密碼:"cin>>pwd;cout<<"請(qǐng)?jiān)佥斎胍淮涡旅艽a:"cin>>repwd;if(pwd!=repwd)cout<<"你輸入的兩次密碼不一樣,按輸入鍵返回上一層菜單!"<<endl;elsecout<<"密碼修改成功,請(qǐng)牢記!"<<endl;cin.get(); void consumer:fetc

26、hmoney()float m;char ch;docout<<endl<<"輸入取款金額:"<<"¥>"<<endl ; cin>>m; while(m<=0) cout<<"請(qǐng)輸入正確的數(shù)字!"<<endl;cout<<""cin>>m; if(money<m)cout<<"對(duì)不起,你的余額不足!"<<endl; else money=mone

27、y-m; cout<<endl<<"操作成功,請(qǐng)收好錢(qián)!"<<endl; cout<<"是否要繼續(xù)該項(xiàng)操作:(Y/N) "<<endl;cout<<""cin>>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y')/選擇錯(cuò)誤時(shí)判定cout<<""cin>>ch;w

28、hile(ch='y'|ch='Y');void consumer:savemoney()/存錢(qián)函數(shù)功能實(shí)現(xiàn) float c; char ch;docout<<endl<<"請(qǐng)輸入要存入的金額:"<<"¥>"<<endl ; cin>>c; while(c<=0) cout<<"輸入錯(cuò)誤,請(qǐng)重新輸入!"<<endl;cout<<""cin>>c; money=mon

29、ey+c; cout<<"操作已成功!"<<endl;cout<<"是否要繼續(xù)該項(xiàng)操作:(Y/N) "<<endl;cout<<""cin>>ch;while(ch!='n'&&ch!='N'&&ch!='Y'&&ch!='y')cout<<""cin>>ch;while(ch='y'|ch='Y');int YH:acnum=0;void consumer:display()/用戶(hù)信息界面system("cls"); cout<<"#"<<endl;cout<<"#"<<endl;cout<<"# 用戶(hù)姓名:"<<name<<endl;cout<<"#"<<endl;cout<<&q

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論