銀行賬戶管理程序_第1頁
銀行賬戶管理程序_第2頁
銀行賬戶管理程序_第3頁
銀行賬戶管理程序_第4頁
銀行賬戶管理程序_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、 安陽師范學(xué)院 面向?qū)ο蟪绦蛟O(shè)計(jì)課外實(shí)踐 面向?qū)ο蟪绦蛟O(shè)計(jì)課外實(shí)踐報(bào)告項(xiàng) 目 名 稱: 銀行賬戶管理程序(win32應(yīng)用程序) 所 在 班 級(jí): 13級(jí)物聯(lián)網(wǎng)工程 小 組 成 員: 王鐸 指 導(dǎo) 教 師: 趙紅丹 起 止 時(shí) 間: 2014.11.252014.12.20 項(xiàng)目基本信息項(xiàng)目名稱設(shè)計(jì)一個(gè)排課程序項(xiàng)目簡(jiǎn)介1 問題描述設(shè)計(jì)一個(gè)銀行賬戶管理程序,賬戶的信息有賬號(hào)(唯一)、姓名、余額、身份證號(hào)碼、單位、電話號(hào)碼、地址等,允許用戶進(jìn)行如下操作:開戶、銷戶、存款、取款、轉(zhuǎn)賬、查詢,一個(gè)用戶可以有多個(gè)戶頭,賬戶的數(shù)值沒有上限。2基本要求程序運(yùn)行時(shí),可以由用戶選擇進(jìn)行何種操作,開戶操作要求輸入用

2、戶信息后自動(dòng)獲取賬號(hào),用戶銷戶后賬號(hào)被回收,并且該賬號(hào)可以繼續(xù)分配給其它賬戶,不允許用戶透支,根據(jù)姓名或賬號(hào)可以進(jìn)行用戶的信息查詢,所有的賬戶信息應(yīng)存放到一個(gè)文件中,可以隨時(shí)的訪問和更新3測(cè)試數(shù)據(jù)程序應(yīng)輸入不少于10人的賬戶信息,應(yīng)考慮到人員同名的情況。小組成員王鐸任務(wù)分工一、問題描述及分析:我們的銀行賬戶管理系統(tǒng)的主要問題就是 :1. 對(duì)剛剛開通銀行賬號(hào)的人們需要自動(dòng)的按照先后順序給出所屬于他們的銀行賬號(hào)碼,切不允許號(hào)碼重復(fù)。即給賬號(hào)一個(gè)初始值,且開通一個(gè)賬戶賬號(hào)就自行加加,即將其設(shè)成靜態(tài)成員,即可達(dá)到要求。2. 對(duì)已開通的銀行賬戶能進(jìn)行注銷賬號(hào)、存、取錢,賬戶之間能相互轉(zhuǎn)賬,且能記住他們的

3、賬戶信息,這就需要在銀行類Bank里控制賬號(hào)類Account的成員,然后進(jìn)行編輯即可。3. 開通銀行賬號(hào)時(shí)需謹(jǐn)記自己的身份證號(hào)碼,這對(duì)以后查找個(gè)人信息十分關(guān)鍵,所以開戶時(shí)需要認(rèn)真填寫個(gè)人信息,如實(shí)填寫!切記!二、功能模塊及結(jié)構(gòu)描述:功能模塊:我們的程序共分為:開通銀行賬戶、注銷銀行賬戶、對(duì)已開通的賬戶進(jìn)行存款、取款、對(duì)已開通的兩個(gè)賬戶進(jìn)行轉(zhuǎn)賬、對(duì)已開通的賬戶的信息的查詢(包括對(duì)單個(gè)賬戶的查詢)這六個(gè)功能模塊。結(jié)構(gòu)描述:1. 由于是銀行賬戶管理系統(tǒng),且是銀行管理賬號(hào),所以共分為兩個(gè)類,即賬號(hào)類Account和銀行類Bank。2. 賬號(hào)類Account主要管理賬戶的所有信息,對(duì)賬號(hào)的輸入、存入、輸

4、出,對(duì)賬戶余額的轉(zhuǎn)入和轉(zhuǎn)出等都是賬號(hào)類管理的,而銀行類Bank是對(duì)人們進(jìn)行開通銀行賬戶、注銷銀行賬戶、存款、取款、轉(zhuǎn)賬、已開通賬戶信息的查詢等服務(wù)的三、主要流程描述:流程圖:開始運(yùn)行>開通賬戶(初始余額均為0)>賬戶信息存入文件>顯示所有已開通賬戶的信息>查詢單個(gè)賬戶信息(按身份證號(hào)碼查找)>賬戶進(jìn)行存款、取款>兩個(gè)賬戶之間進(jìn)行轉(zhuǎn)賬>注銷賬戶>結(jié)束運(yùn)行 四、使用說明:程序運(yùn)行后,進(jìn)入界面:在如上所示的界面下,根據(jù)提示進(jìn)行基本的操作。五、 問題及解決方法問題1.賬戶號(hào)碼accountnumber自動(dòng)生成的問題,剛開始是將其定義在賬號(hào)類Account

5、和銀行類Bank這兩個(gè)類的外面,雖然可以自動(dòng)生成,但是卻無法將各個(gè)賬戶號(hào)碼保存起來并且正確輸出。問題2.兩個(gè)賬戶轉(zhuǎn)賬時(shí),無法將上個(gè)賬戶的錢數(shù)正確的轉(zhuǎn)入另一個(gè)賬戶問題3.注銷賬號(hào)時(shí)總是注銷不成功,注銷了還存在問題1的解決方法:accountnumber是賬號(hào),故應(yīng)是賬號(hào)類Account里的一個(gè)成員,由于它是自加的,所以將initnumber設(shè)置成靜態(tài)成員,另設(shè)一個(gè)accountnumber成員,且將initnumber的值賦給accountnumber,這樣就完成了賬號(hào)的自行增加且能保存。問題2的解決方法:兩個(gè)賬戶轉(zhuǎn)賬,應(yīng)該也是賬號(hào)類Account里的函數(shù)的問題,所以,為了能使轉(zhuǎn)入錢的賬戶轉(zhuǎn)入的

6、錢數(shù)等于轉(zhuǎn)出錢的賬戶轉(zhuǎn)出的錢數(shù),那么,轉(zhuǎn)出錢的函數(shù)就應(yīng)該有轉(zhuǎn)出錢數(shù)的返回值,即return money;而轉(zhuǎn)出錢的函數(shù)就應(yīng)該將其轉(zhuǎn)出的money轉(zhuǎn)給這個(gè)賬戶,則函數(shù)就應(yīng)該寫成void Account:cunru(float x),而下面運(yùn)用轉(zhuǎn)賬時(shí)x=accoutsetm.zhuanzou();則轉(zhuǎn)賬時(shí)就寫成accoutsetm.cunru(x);即可。問題3的解決方法:銀行是管理賬號(hào)的,所以,若使銀行能夠注銷某個(gè)賬號(hào)的所有信息,那么,將這個(gè)賬號(hào)從賬號(hào)數(shù)組里去掉即可,則注銷一個(gè)賬號(hào),賬號(hào)數(shù)組總數(shù)就減少1,即count=count-1;若使其賬號(hào)注銷,則可以先從數(shù)組中查詢到該賬戶,然后將其賬戶后面

7、的成員一個(gè)一個(gè)向前移一位:accoutsetl=accoutsetl+1;且數(shù)組總數(shù)減少了1,那么即可認(rèn)為該賬戶已被注銷了。六、 課外實(shí)踐總結(jié):通過這次課外實(shí)踐,我們真正體會(huì)到自己的能力的不足,當(dāng)然,這次實(shí)踐沒有少請(qǐng)教老師,在老師的精心指導(dǎo)下,我們更加有信心去戰(zhàn)勝困難,并且愛上了編程,感覺C+還是比較容易學(xué)的,不過還是要好好學(xué)習(xí),除了上課認(rèn)真聽講外,還應(yīng)該課下多上機(jī)實(shí)踐,把所學(xué)的一點(diǎn)一滴慢慢積累下來,不然到最后什么都沒記住,到那時(shí)候再后悔自己平時(shí)沒有好好學(xué)習(xí)就已經(jīng)晚了,一般都是書到用時(shí)方恨少,所以,平時(shí)就該把該記的都會(huì)用,到時(shí)候編程的時(shí)候用的得心應(yīng)手,不管怎么說,總之,我們都要多學(xué)、多問、多總

8、結(jié),爭(zhēng)取將C+學(xué)精、學(xué)通!七、 源代碼:#include<iostream>#include<string>#include<fstream>#include<cstdlib>using namespace std;class Account/-賬戶類public:Account()/-Account構(gòu)造函數(shù) accountnumber=initnumber;/-賬戶號(hào)碼賦值 initnumber+; rest_money=0; Account()/-Account析構(gòu)函數(shù)void Input();/-輸入賬戶信息函數(shù)void Printf1()

9、;/-輸出賬戶信息函數(shù)void Delete();/-刪除賬戶信息函數(shù)void Add();/-增加錢數(shù)void Min();/-減少錢數(shù)float zhuanzou();/-轉(zhuǎn)走void cunru(float x);/-存入string id;/-身份證號(hào)碼 float rest_money;/-余額protected:string name;/-姓名int age;/-年齡string danwei;/-單位string phonenumber;/-電話號(hào)碼string address;/-地址string password;/-密碼string password1;/-密碼1float

10、 money1;/-轉(zhuǎn)的金額 long accountnumber;/-賬戶號(hào)碼static int initnumber;/-設(shè)置靜態(tài)成員,讓賬號(hào)能自行加加;int Account:initnumber=622001;void Account:Input()/-輸入賬戶信息函數(shù) int a; system("cls"); cout<<"您好!*_* 歡迎您來開通銀行賬戶!*.* "<<endl; cout<<" "<<endl; cout<<" "<

11、;<endl; cout<<"-"<<endl;cout<<"接下來,請(qǐng)您依次輸入您的 姓名 年齡 身份證號(hào)碼 單位 電話號(hào)碼 地址 密碼 "<<endl; cin>>name>>age>>id>>danwei>>phonenumber>>address>>password; cout<<"請(qǐng)?jiān)俅纬鋈肽拿艽a: " cin>>password1; if(password1=p

12、assword) cout<<"您好!*_* 您的賬戶號(hào)碼是:"<<accountnumber<<endl; cout<<"恭喜您的存折賬戶已開通!請(qǐng)您記好您的賬戶號(hào)碼和您的密碼!*.* *.*"<<endl; cout<<"-"<<endl; else cout<<"很抱歉!您與上次輸入的密碼不一致!請(qǐng)重新開戶!"<<endl; a=1; system("pause"); void Ac

13、count:Printf1()cout<<"該賬號(hào)的銀行賬戶信息如下:"<<endl;cout<<"姓名:"<<name<<"年齡:"<<age<<"身份證號(hào)碼:"<<id<<"單位:"<<danwei<<"電話號(hào)碼:"<<phonenumber<<"地址:"<<address<<

14、;"賬戶號(hào)碼:"<<accountnumber<<"余額:"<<rest_money<<endl;void Account:Add()/-增加錢數(shù) long money; cout<<"請(qǐng)輸入您要存入的錢數(shù):"<<endl; cin>>money; rest_money=rest_money+money; cout<<"您好!*_* 恭喜您,存入成功 !"<<endl;void Account:Min()/-

15、減少錢數(shù) long money; cout<<"請(qǐng)輸入您要取出的錢數(shù):"<<endl; cin>>money; if(rest_money>=money) rest_money=rest_money-money; else cout<<"您好!*_* 很抱歉,您的余額不足 !"<<endl;float Account:zhuanzou()/-轉(zhuǎn)走 float money; cout<<"請(qǐng)輸入您要轉(zhuǎn)走的錢數(shù):"<<endl; cin>>

16、;money; if(rest_money>=money) rest_money=rest_money-money; return money; else cout<<"您好!*_* 很抱歉,您的余額不足 !"<<endl;void Account:cunru(float x)/-存入 rest_money=rest_money+x;class Bank /-定義銀行類public:Bank()/-創(chuàng)建Bank類構(gòu)造函數(shù)void Menu();/-銀行賬戶管理系統(tǒng)菜單void savefile();/-存入文件void Xianshi1();/

17、-顯示所有已開通賬戶的信息void Xianshi2();/-顯示單個(gè)已開通賬戶的信息void Geshu();/-顯示當(dāng)前銀行賬戶數(shù)目void Kaihu();/-開通銀行賬戶 void xiaohu();/-注銷銀行賬戶void deposit();/-存款void withdraw();/-取款void zhuanzhang();/-轉(zhuǎn)賬protected:string password;/-密碼float rest_money;/-余額Account accoutset10;/-賬戶類對(duì)象數(shù)組作為銀行成員static int count;/-靜態(tài)數(shù)據(jù)成員,用來累計(jì)賬號(hào)的個(gè)數(shù);void

18、Bank:Menu()/-銀行賬戶管理系統(tǒng)菜單 cout<<" 歡迎您光臨銀行賬戶管理系統(tǒng)!*.*"<<endl; cout<<""<<endl;cout<<""<<endl; cout<<" -*-"<<endl;cout<<" |"cout<<" "cout<<"|"<<endl;cout<<&qu

19、ot; |" cout<<" 1.開通銀行賬戶 "cout<<"|"<<endl;cout<<" |"cout<<" "cout<<"|"<<endl;cout<<" |"cout<<" 2.注銷銀行賬戶 "cout<<"|"<<endl;cout<<" |"cou

20、t<<" "cout<<"|"<<endl;cout<<" |"cout<<" 3.存款 "cout<<"|"<<endl;cout<<" |"cout<<" "cout<<"|"<<endl;cout<<" |"cout<<" 4.取款 "c

21、out<<"|"<<endl;cout<<" |"cout<<" "cout<<"|"<<endl;cout<<" |"cout<<" 5.轉(zhuǎn)賬 "cout<<"|"<<endl;cout<<" |"cout<<" "cout<<"|"<

22、<endl; cout<<" |"cout<<" 6.查詢賬戶信息 "cout<<"|"<<endl;cout<<" |"cout<<" "cout<<"|"<<endl; cout<<" -*-"<<endl; cout<<" 請(qǐng)輸入您要進(jìn)行的業(yè)務(wù)的編碼:"<<endl;void Ban

23、k:Kaihu()/-開通銀行賬戶 Account acc; acc.Input();accoutsetcount=acc;+count;void Bank:savefile()/-存入文件ofstream fout("D:f2.dat",ios:out|ios:app); if(!fout) cout<<"Cannot open output file.n"return; for(int i=0;i<=count;i+) fout.write(char*) &accoutseti,sizeof(accoutseti);fout

24、.close();void Bank:Geshu()/-顯示當(dāng)前銀行賬戶數(shù)目cout<<"當(dāng)前已開通的賬戶數(shù)目為:"<<count<<endl;void Bank:Xianshi1()/-顯示所有已開通賬戶的信息for(int m=0;m<count;m+) accoutsetm.Printf1();void Bank:Xianshi2()/-顯示單個(gè)已開通賬戶的信息 string id1;cout<<"您好!*_* 請(qǐng)輸入您要顯示的賬戶的身份證號(hào)碼:"<<endl;cin>>

25、id1;for(int m=0;m<count;m+) if(id1=accoutsetm.id) accoutsetm.Printf1(); elsecout<<"您好!*_* 該賬號(hào)不存在 !"<<endl; void Bank:xiaohu()/-注銷賬戶 string id1; cout<<"您好!*_* 請(qǐng)輸入您要注銷的賬戶的身份證號(hào)碼:"<<endl; cin>>id1;for(int m=0;m<count;m+) if(id1=accoutsetm.id) for(i

26、nt l=m;l<count;l+) accoutsetl=accoutsetl+1; count=count-1; cout<<"您好!*_* 該賬號(hào)已被注銷 !"<<endl; break; else cout<<"您好!*_* 該賬號(hào)不存在 !"<<endl;void Bank:deposit()/-存款string id1; cout<<"您好!*_* 請(qǐng)輸入您要存款的賬戶的身份證號(hào)碼:"<<endl; cin>>id1;for(int

27、m=0;m<count;m+) if(id1=accoutsetm.id) accoutsetm.Add(); cout<<"您好!*_* 恭喜您存入成功 !"<<endl; elsecout<<"您好!*_* 該賬號(hào)不存在 !"<<endl;void Bank:withdraw()/-取款string id1; cout<<"您好!*_* 請(qǐng)輸入您要取款的賬戶的身份證號(hào)碼:"<<endl; cin>>id1;for(int m=0;m<count;m+) if(id1=accoutsetm.id) accoutsetm.Min(); elsec

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論