歡迎來到裝配圖網(wǎng)! | 幫助中心 裝配圖網(wǎng)zhuangpeitu.com!
裝配圖網(wǎng)
ImageVerifierCode 換一換
首頁 裝配圖網(wǎng) > 資源分類 > DOC文檔下載  

C++課程設(shè)計 銀行賬戶管理系統(tǒng)

  • 資源ID:46703410       資源大?。?span id="vkn5oko" class="font-tahoma">82KB        全文頁數(shù):21頁
  • 資源格式: DOC        下載積分:20積分
快捷下載 游客一鍵下載
會員登錄下載
微信登錄下載
三方登錄下載: 微信開放平臺登錄 支付寶登錄   QQ登錄   微博登錄  
二維碼
微信掃一掃登錄
下載資源需要20積分
郵箱/手機(jī):
溫馨提示:
用戶名和密碼都是您填寫的郵箱或者手機(jī)號,方便查詢和重復(fù)下載(系統(tǒng)自動生成)
支付方式: 支付寶    微信支付   
驗證碼:   換一換

 
賬號:
密碼:
驗證碼:   換一換
  忘記密碼?
    
友情提示
2、PDF文件下載后,可能會被瀏覽器默認(rèn)打開,此種情況可以點擊瀏覽器菜單,保存網(wǎng)頁到桌面,就可以正常下載了。
3、本站不支持迅雷下載,請使用電腦自帶的IE瀏覽器,或者360瀏覽器、谷歌瀏覽器下載即可。
4、本站資源下載后的文檔和圖紙-無水印,預(yù)覽文檔經(jīng)過壓縮,下載后原文更清晰。
5、試題試卷類文檔,如果標(biāo)題沒有明確說明有答案則都視為沒有答案,請知曉。

C++課程設(shè)計 銀行賬戶管理系統(tǒng)

真誠為您提供優(yōu)質(zhì)參考資料,若有不當(dāng)之處,請指正。青島理工大學(xué)C+面向?qū)ο笳n程設(shè)計報告院(系): 計算機(jī)工程學(xué)院 專業(yè): 軟件工程 學(xué)生姓名: 華逸帆 班級:軟件121班學(xué)號: 201207185 題目: 銀行賬戶管理系統(tǒng) 起迄日期: 2014.6.232013.7.5 設(shè)計地點: 計算機(jī)學(xué)院機(jī)房 指 導(dǎo) 教 師: 李蘭 完成日期: 2014 年7月 5 日 目錄1.概要設(shè)計.11.1設(shè)計思想.11.2設(shè)計方法.1 1.3系統(tǒng)中主要模塊和其他模塊間的關(guān)系描述.12.需求分析.23.總體設(shè)計.24.模塊設(shè)計.34.1開戶功能模塊.34.1.1功能模塊分析.34.1.2代碼設(shè)計及分析.44.1.3運行結(jié)果.54.2銷戶功能模塊.54.2.2功能模塊分析54.2.3代碼設(shè)計及分析54.2.3運行結(jié)果.75.系統(tǒng)使用說明.76.附錄.76.1設(shè)計體會.76.2源程序.81. 概要設(shè)計1.1設(shè)計思想 銀行賬戶管理系統(tǒng),通過設(shè)計一個控制臺應(yīng)用程序來實現(xiàn)工作人員遍歷管理所有銀行用戶的銀行賬戶功能。通過C+面向?qū)ο蟮某绦蛟O(shè)計語言,利用面向?qū)ο蟮脑O(shè)計思想,將程序運用面向?qū)ο蟮姆椒ㄖ饓K劃分,對每個對象的性質(zhì)進(jìn)行分析設(shè)計。1.2實現(xiàn)方法 總體設(shè)計方法,是構(gòu)建一個鏈表,來存儲用戶的資料,數(shù)據(jù)存儲方面,用存儲文件技術(shù)代替存儲數(shù)據(jù)庫技術(shù)。構(gòu)建一個銀行賬戶類,封裝鏈表的頭結(jié)點,創(chuàng)建用戶銀行賬戶各個屬性的函數(shù)及其變量。構(gòu)建一個程序操作類,用于封裝實現(xiàn)打印操作菜單,實現(xiàn)主程序的操作選擇等方法。1.3系統(tǒng)中主要模塊及各模塊間的關(guān)系的描述系統(tǒng)中的主要模塊:結(jié)構(gòu)體節(jié)點:用于存放用戶所用的賬戶信息(姓名,單位,電話,賬戶號,余額,地址,是否為聯(lián)名賬戶等)銀行賬戶類:用于封裝鏈表的頭結(jié)點,記錄刪除所回收的賬戶號,和刪除回收的賬戶數(shù)目;構(gòu)造函數(shù)在創(chuàng)建對象時,完成從文件中讀出用戶賬戶所有信息的操作,析構(gòu)函數(shù)在對象即將消亡時,完成將整個鏈表中的所有信息逐個節(jié)點的存入文件中的操作。程序操作類:用于實現(xiàn)程序中,菜單打印操作,菜單選擇等操作。其他各個模塊:節(jié)點構(gòu)建函數(shù)構(gòu)(開戶函數(shù)):鏈表構(gòu)建函數(shù)為銀行賬戶類的私有函數(shù)成員,銀行賬戶類的大三功能函數(shù)之一,即是鏈表構(gòu)建的方法,也是用戶開戶的方法,當(dāng)構(gòu)造函數(shù)運行時從文件中讀入數(shù)據(jù)存入鏈表時調(diào)用,在用戶選擇開戶操作時調(diào)用,實現(xiàn)添加一個節(jié)點的功能,進(jìn)而實現(xiàn)鏈表一個節(jié)點逐個構(gòu)造的功能。節(jié)點刪除函數(shù)(銷戶函數(shù)):節(jié)點刪除函數(shù)為銀行賬戶類的私有成員,銀行賬戶類的三大功能函數(shù)之一,即是鏈表刪除的方法,也是用戶銷戶的方法,當(dāng)用戶選擇銷戶操作時,調(diào)用節(jié)點刪除函數(shù),刪除并釋放節(jié)點。資金操作函數(shù)(存款,取款,轉(zhuǎn)賬函數(shù)):資金操作函數(shù)為銀行賬戶類的私有成員,銀行賬戶的三大功能函數(shù)之一,是用戶所有對資金操作的方法的集合。在用戶選擇任何一種資金操作時調(diào)用資金操作函數(shù),完成對用戶賬戶資金的操作,同時對節(jié)點中相對應(yīng)的變量進(jìn)行修改,并且返回操作結(jié)果。操作選擇函數(shù):選擇操作函數(shù)為銀行類的公有成員,根據(jù)打印菜單函數(shù),用戶輸入任意一個選項選擇操作,相對應(yīng)的銀行賬戶的操作。并且判斷用戶是否按照規(guī)定輸入,將用戶輸入的選擇傳入操作函數(shù)。操作函數(shù):操作函數(shù)為銀行操作類的私有成員,根據(jù)傳來的參數(shù)選擇是否調(diào)用,三大功能函數(shù),并且返回操作結(jié)果。其他功能函數(shù):基本均為銀行賬戶類的私有成員函數(shù),節(jié)點信息輸入函數(shù):實現(xiàn)節(jié)點信息逐個輸入,和賬號生成的功能,主要是在開戶函數(shù)中調(diào)用。節(jié)點遍歷函數(shù):根據(jù)傳入的字符串,遍歷查鏈表,返回符合規(guī)定的節(jié)點指針。文件讀寫操作函數(shù)():實現(xiàn)節(jié)點信息文件中的讀寫功能,同時實現(xiàn)類中私有變量鏈表長度,回收賬號,回收賬號數(shù)目的讀寫操作,主要實在對象的構(gòu)造函數(shù)和析構(gòu)函數(shù)中調(diào)用。2. 需求分析銀行賬戶管理系統(tǒng),是由銀行工作人員對銀行用戶的賬戶進(jìn)行操作管理的系統(tǒng)。是一款使用者為銀行工作人員,但服務(wù)對象是銀行用戶的管理系統(tǒng)。不考慮銀行工作人員賬號注冊用戶名密碼的情況下,只需要對銀行用戶賬戶的信息進(jìn)行操作和管理就能完成要求。銀行用戶賬戶的屬性中含有,用戶的用戶真實姓名,身份證號碼,公司,地址,電話號碼,賬戶號碼,賬戶余額等屬性。除賬戶余額外,其余變量類型均應(yīng)該為string類型,賬戶余額的類型應(yīng)該為,double類型。身份證號碼,長度應(yīng)為18位,電話號碼的長度應(yīng)為11位。賬戶余額不能超值,最小值為零。賬戶號碼應(yīng)由系統(tǒng)自動生成,一個用戶名額下可以有多個賬戶,每個賬戶由賬戶號來區(qū)別開來。另外應(yīng)該設(shè)立一種聯(lián)名賬戶,這種賬戶有兩個人共同管理,及一個賬戶由兩個用戶名,有兩個身份證號碼。此外,系統(tǒng)中的每個變量的輸入都應(yīng)該有判斷正誤的判斷,對錯誤無效的變量輸入應(yīng)該反饋結(jié)構(gòu)不接受。系統(tǒng)中所有的用戶信息應(yīng)該在程序開始時從文件中讀出,再程序結(jié)束時寫入文件,這樣實現(xiàn)用戶信息的存儲代替存入數(shù)據(jù)庫的方法。3. 總體設(shè)計管理系統(tǒng)總體結(jié)構(gòu)由構(gòu)建的鏈表存儲信息,程序結(jié)束后所有的用戶信息都存入文件中,程序開始時再從文件中讀取相關(guān)的信息。聲明一個結(jié)構(gòu)體變量Node,包含string類型的變量:用戶名,身份證號碼,電話號碼,公司,地址,賬戶號,聯(lián)名用戶用戶名,聯(lián)名用戶身份證號碼,double類型的變量余額,Node*類型的變量next。定義一個Link類,封裝鏈表的頭指針Node *head,鏈表的長度length,回收的賬號lack【】,回收的賬號數(shù)目number。構(gòu)造函數(shù),在建立對象時構(gòu)建鏈表,通過存入鏈表的length值判斷鏈表的長度及已存在的銀行賬戶個數(shù),從而調(diào)用構(gòu)造鏈表的add()函數(shù),在add()函數(shù)中調(diào)用file_read()函數(shù)讀出存在文件中銀行賬戶的信息。程序開始打印出菜單供用戶選擇。開戶,對應(yīng)add()函數(shù),add函數(shù)調(diào)用out_node()函數(shù),根據(jù)提示輸入用戶銀行賬戶所有信息,并根據(jù)length長度和用戶的身份證號碼后12位生成賬戶賬號。銷戶操作,對應(yīng)delcte()函數(shù),根據(jù)傳遞的參數(shù)用戶賬號字符串,查找對應(yīng)的銀行賬戶,然后對節(jié)點進(jìn)行刪除釋放。存款,取款,轉(zhuǎn)賬操作對應(yīng)money()函數(shù),根據(jù)傳遞的參數(shù),用戶的賬戶號碼,及選擇的選項,執(zhí)行相對的操作,通過賬戶號碼找到相對應(yīng)的節(jié)點,在對節(jié)點的money變量進(jìn)行簡單的加減操作。析構(gòu)函數(shù),在對象消亡時進(jìn)行調(diào)用,本程序也就是在程序即將結(jié)束時進(jìn)行調(diào)用,將鏈表中的每個節(jié)點所有信息,按照一定的順序存入指定的文件中,再將銀行類中的鏈表的長度length,回收的賬號數(shù)組lack【】,回收的賬號數(shù)目按照一定的順序存入文件中。4. 程序模塊設(shè)計4.1開戶功能模塊:4.1.1模塊功能分析:開戶功能膜塊在面向用戶方面應(yīng)該實現(xiàn)應(yīng)該具有如下功能,銀行賬戶所有信息輸入的功能,提示用戶是否申請為聯(lián)名賬戶,并且防止用戶隨意輸入錯誤無效的信息。在面向系統(tǒng)結(jié)構(gòu)方面,應(yīng)該具有構(gòu)建鏈表節(jié)點功能,創(chuàng)建鏈表節(jié)點,并且根據(jù)所處的位置加入鏈表,尾節(jié)點的next指針應(yīng)該指向NULL。最后返回操作結(jié)果,執(zhí)行成功返回true,失敗返回false。4.1.2代碼的設(shè)計及分析:bool add(bool t,ifstream &input)/是否是從文件中讀出銀行賬戶信息Node* pel,*tail;if(head=NULL)/構(gòu)建鏈表頭結(jié)點head=new Node();if(!t) /是否第一次使用系統(tǒng)out_node(head,length);length+;else/不是第一次使用系統(tǒng),從文件中讀取信息read_file(head,input);head->next=NULL;return true;elsepel=head;while(pel->next)/在鏈表的末端添加節(jié)點pel=pel->next;tail=new Node();tail->next = NULL;if(!t) /是否第一次使用系統(tǒng)out_node(tail,length);length+;else/不是第一次使用系統(tǒng),從文件中讀取信息read_file(tail,input);pel->next = tail;pel=tail;return true;4.1.3運行結(jié)果:4.2銷戶模塊:4.2.1模塊功能分析模塊功能分析:銷戶函數(shù)模塊,面像用戶來說需要實現(xiàn)以下功能:用戶通過輸入一個銀行賬戶號碼,查找相對應(yīng)的銀行賬戶,如果銀行賬戶不存在,返回給用戶銀行賬戶不存在的信息,如果存在,提示用戶是否刪除,用戶確認(rèn)刪除,將對應(yīng)的銀行賬戶信息刪除,反饋給用戶刪除成功的信息。面對系統(tǒng)內(nèi)部來說,應(yīng)該實現(xiàn)以下功能:通過所輸入的string 類型變量查找符合要求的節(jié)點,用戶確認(rèn)刪除,用delete函數(shù)釋放節(jié)點內(nèi)存,重新接好鏈表。此外應(yīng)該防止用戶隨意輸入的無效和錯誤信息。最后返回操作結(jié)果,執(zhí)行成功返回true,失敗返回false。4.2.2代碼的設(shè)計及分析:bool delect(string num)Node* pel,*q;int c,i;if(head->num=num)/如果刪除的是頭結(jié)點cout<<"請問您確定要銷戶嗎? 1.yes 2.no"<<endl;while(true)cin>>c;if(c=1)for(i=0;i<=50;i+)/回收刪除的銀行賬號到一個數(shù)組里,并記錄數(shù)組中,值得個數(shù)if(lacki!=NULL)lacki=(int)head->num0-0);number+;break;pel=head;head=head->next;length-;delete(pel);return true;else if(c=2)return false;else cout<<"輸入有誤!請重新輸入!"<<endl;pel = head; while(pel->next!=NULL)if(num=pel->next->num)/查找要刪除的節(jié)點cout<<"請問您確定要銷戶嗎? 1.yes 2.no"<<endl;while(true)cin>>c;if(c=1)for(i=0;i<=50;i+)/回收刪除的銀行賬號到一個數(shù)組里,并記錄數(shù)組中,值得個數(shù)if(lacki<NULL)/找到數(shù)組中空的位置,存放回收的賬號lacki=(int)head->num0-0);number+;break;q = pel->next;pel->next = q->next;delete(q);length-;return true;else if(c=2)/如果要銷戶return false;elsecout<<"輸入有誤!重新輸入!"<<endl;pel=pel->next;if(pel->next=NULL)cout<<"沒有找到所查找的賬戶"<<endl;return false;4.2.3運行結(jié)果:5. 系統(tǒng)使用說明系統(tǒng)開始運行,屏幕上回打印出功能菜單,根據(jù)功能菜單提示的來選擇功能操作,在退出系統(tǒng)時,一定要通過系統(tǒng)提供正確的結(jié)束進(jìn)程方式,才能自動的保存所有的操作。銀行賬戶的所有信息會在下次系統(tǒng)啟動時自動加載到系統(tǒng)中。6.附錄6.1設(shè)計體會:通過此次C+程序設(shè)計,我切身的體會到了面向?qū)ο蟪绦蚝兔嫦蜻^程程序語言的區(qū)別,區(qū)別不僅僅存在于兩種程序語言中,也存在與編程思想中。面向?qū)ο蟮某绦蚓幊趟枷胫饕前研枨竽K化,根據(jù)每個模塊特定的屬性,需要實現(xiàn)的功能來編寫模塊,創(chuàng)建對象。紙上得來終覺淺,細(xì)節(jié)方便我也學(xué)習(xí)到了很,例如析構(gòu)函數(shù)的調(diào)用實在對象的生存周期結(jié)束時,而對象的生存周期也有很明確的規(guī)定,比如說一次循環(huán)中創(chuàng)建的對象,在這次循環(huán)結(jié)束時,這個對象的生存周期就已經(jīng)結(jié)束了;早期的C+ 編譯器不支持string類型的數(shù)組,因為數(shù)組的長度應(yīng)該是一定不便的,而string類型的數(shù)組違反了早期C+開發(fā)環(huán)境這一規(guī)定;對文件對象iftream作為參數(shù)傳給函數(shù)時,形參的形式只能為引用,因為其對象的拷貝構(gòu)造函數(shù)默認(rèn)為私有變量。等等很多細(xì)節(jié)問題使我學(xué)到了很多,又熟練運用了C+程序設(shè)計的技巧。本次設(shè)計我將銀行賬戶幾乎所有成員都封裝到了私有變量中,增強了程序的密封性。將保存于讀取數(shù)據(jù)悄無聲息的在構(gòu)造函數(shù)和析構(gòu)函數(shù)中完成了,降低了用戶的操作次數(shù)是本程序的亮點。但本系統(tǒng)代碼還不夠精簡,有待改進(jìn)。6.2源程序:/ 銀行賬戶.cpp : Defines the entry point for the console application./#include "stdafx.h"#include <iostream>#include <string>#include <stdlib.h>#include <time.h>#include <fstream>#include <windows.h>using namespace std;struct Node/定義一個結(jié)構(gòu)體變量,包含所有銀行賬戶信息。double money;string num;string name,name1;/字符串?dāng)?shù)組為聯(lián)名賬戶做準(zhǔn)備string IDnum,IDnum1;string company;string phonenum;string address;Node *next;class Link/鏈表類private:Node *head;/封裝頭指針和鏈表長度int length;int lack50,number;/用于記錄回收的賬號,和回收的賬號數(shù)目/*節(jié)點信息輸入函數(shù)*/void out_node(Node *dot,int i)string num1;/用于生成賬號char num210;/用于生成賬號int j=0;/循環(huán)變量jcout<<"請輸入相關(guān)數(shù)據(jù):"<<endl;cout<<"請輸入公司"<<endl; cin>>dot->company;while(true) /電話號碼長度判斷cout<<"請輸入電話號碼"<<endl; cin>>dot->phonenum;if(dot->phonenum.length()=11) break;else cout<<"輸入有誤!請重新輸入!"<<endl;cout<<"請輸入地址"<<endl; cin>>dot->address;dot->money = 0;/用戶的初始余額為零cout<<"請輸入姓名1"<<endl; cin>>dot->name;while(true)/身份號長度判斷cout<<"請輸入身份證號1"<<endl; cin>>dot->IDnum;if(dot->IDnum.length()=18) break;else cout<<"身份證號碼長度有誤,請重新輸入"<<endl;num1 = dot->IDnum.substr(6,12); /用于生成賬號if(number=0)/如果有回收的賬號,先用被回收的賬號itoa(i,num2,10);elsewhile(true)if(lackj>=0)i=lackj;lackj=-1;number-;itoa(i,num2,10);break;j+;if(!question() /是否設(shè)置為聯(lián)名賬戶cout<<"請輸入姓名2"<<endl; cin>>dot->name1;while(true)/身份號長度判斷cout<<"請輸入身份證號2"<<endl;cin>>dot->IDnum1;if(dot->IDnum.length()=18)break;else cout<<"身份證號碼長度有誤,請重新輸入"<<endl;dot->num = num2+ dot->IDnum1.substr(6,12) + num1; /生成賬戶號,聯(lián)名賬戶由兩個身份證號,后12為組成elsedot->num = num2 + num1 ;/生成賬戶號,一般賬戶由身份證號后12位加總賬戶數(shù)組成cout<<"您的銀行賬戶卡號為"<<dot->num<<endl;/*節(jié)點信息寫入文件函數(shù)*/void write_file() / 程序結(jié)束時 統(tǒng)一將所有信息寫入文件ofstream output("bank.txt");Node *pel;for(pel=head;pel!=NULL;pel=pel->next)output<<pel->num<<" "output<<pel->IDnum<<" "output<<pel->name<<" "if(pel->IDnum1!=""|pel->name1!="")/如果是聯(lián)名賬戶output<<pel->IDnum1<<" "output<<pel->name1<<" "output<<pel->address<<" "output<<pel->company<<" "output<<pel->money<<" "output<<pel->phonenum<<endl;/*節(jié)點信息讀出文件函數(shù)*/void read_file(Node *dot,ifstream &input)/程序開始時將所有信息讀入到文件中input>>dot->num;input>>dot->IDnum;input>>dot->name;if(dot->num.length()>20)/如果是聯(lián)名賬戶,聯(lián)名賬戶的賬號長度應(yīng)為24input>>dot->IDnum1;input>>dot->name1;input>>dot->address;input>>dot->company;input>>dot->money;input>>dot->phonenum;/*節(jié)點查詢函數(shù)*/Node* iterates(string num)/根據(jù)傳入的賬號查找賬戶Node* pel;pel=head;doif(num=pel->num)return pel;pel=pel->next;while(pel!=NULL);return NULL;/*/* 三大功能(開戶,銷戶,金額操作) */*/*添加節(jié)點函數(shù)(開戶)*/bool add(bool t,ifstream &input)/是否是從文件中讀出銀行賬戶信息Node* pel,*tail;if(head=NULL)/構(gòu)建鏈表頭結(jié)點head=new Node();if(!t) /是否第一次使用系統(tǒng)out_node(head,length);length+;else/不是第一次使用系統(tǒng),從文件中讀取信息read_file(head,input);head->next=NULL;return true;elsepel=head;while(pel->next)/在鏈表的末端添加節(jié)點pel=pel->next;tail=new Node();tail->next = NULL;if(!t) /是否第一次使用系統(tǒng)out_node(tail,length);length+;else/不是第一次使用系統(tǒng),從文件中讀取信息read_file(tail,input);pel->next = tail;pel=tail;return true;/*節(jié)點刪除操作(銷戶)*/bool delect(string num)Node* pel,*q;int c,i;if(head->num=num)/如果刪除的是頭結(jié)點cout<<"請問您確定要銷戶嗎? 1.yes 2.no"<<endl;while(true)cin>>c;if(c=1)for(i=0;i<=50;i+)/回收刪除的銀行賬號到一個數(shù)組里,并記錄數(shù)組中,值得個數(shù)if(lacki!=NULL)lacki=(int)head->num0-0);number+;break;pel=head;head=head->next;length-;delete(pel);return true;else if(c=2)return false;else cout<<"輸入有誤!請重新輸入!"<<endl;pel = head; while(pel->next!=NULL)if(num=pel->next->num)/查找要刪除的節(jié)點cout<<"請問您確定要銷戶嗎? 1.yes 2.no"<<endl;while(true)cin>>c;if(c=1)for(i=0;i<=50;i+)/回收刪除的銀行賬號到一個數(shù)組里,并記錄數(shù)組中,值得個數(shù)if(lacki<NULL)/找到數(shù)組中空的位置,存放回收的賬號lacki=(int)head->num0-0);number+;break;q = pel->next;pel->next = q->next;delete(q);length-;return true;else if(c=2)/如果要銷戶return false;elsecout<<"輸入有誤!重新輸入!"<<endl;pel=pel->next;if(pel->next=NULL)cout<<"沒有找到所查找的賬戶"<<endl;return false;/*存,取,轉(zhuǎn)賬函數(shù)*/bool money(string num,int choice,double optmoney=0)/要操作的賬戶,要選擇的操作變編號,操作的資金數(shù)目Node* pel;string num2;double money1;pel = iterates(num);/查找節(jié)點if(choice=5)/如果選擇轉(zhuǎn)賬cout<<"請輸入轉(zhuǎn)賬金額"<<endl;while(true)cin>>money1;if(money1>pel->money|money1<=0)cout<<"輸入有誤(超支,或無效)!請重新輸入!"<<endl;elsebreak;pel->money-=money1;/轉(zhuǎn)出金額cout<<"請輸入對方賬戶號碼"<<endl;cin>>num2;money(num2,1,money1);return true;elseswitch(choice)case 1:pel->money+=optmoney;return true;case 3:cout<<"請輸入存款金額"<<endl;while(true)/輸入存款金額cin>>money1;if(money1<=0)cout<<"輸入無效!請重新輸入!"<<endl;elsebreak;pel->money+=money1;return true;case 4:while(true)/輸入取款金額并操作cout<<"請輸入取款金額"<<endl;while(true)cin>>money1;if(money1>pel->money|money1<=0)cout<<"輸入有誤(超支,或無效)!請重新輸入!"<<endl;elsebreak;pel->money-=money1;return true;/*賬戶操作函數(shù)*/bool operation(int choice)Node* pel;ifstream input("bank.txt");string num;switch(choice)case 1:if(add(false,input)cout<<"開戶成功!"<<endl;return false;case 2:cout<<"請輸入賬戶號碼"<<endl;cin>>num;if(delect(num)cout<<"銷戶成功!"<<endl;else cout<<"銷戶失敗!"<<endl;return false;case 3:cout<<"請輸入賬戶號碼"<<endl;cin>>num;if(money(num,3)cout<<"存款成功"<<endl;return false;case 4:cout<<"請輸入賬戶號碼"<<endl;cin>>num;if(money(num,4)cout<<"取款成功"<<endl;return false;case 5:cout<<"請輸入賬戶號碼"<<endl;cin>>num;if(money(num,5)cout<<"轉(zhuǎn)賬成功"<<endl;return false;case 6:cout<<"請輸入賬戶號碼"<<endl;cin>>num;pel=iterates(num);if(!pel)cout<<"您所查找的賬戶不存在"<<endl;elsecout<<"您所查找的賬戶余額為"<<pel->money<<endl;return false;case 7:return true;case 8:system("cls");return false;/*寫入鏈表長度函數(shù)*/void write_num()/從文件中寫入賬戶的數(shù)目ofstream output;int i=0;output.open("length.txt");output<<length<<" "if(number>=0)output<<number<<" "while(number!=0)if(lacki>=0)output<<lacki<<" "number-;i+;output.close();/*讀出鏈表長度函數(shù)*/void read_length()/從賬戶中讀出賬戶的長度ifstream input("length.txt");input>>length;if(length<0)length=0;input>>number;if(number<0)number=0;for(int i=0;i<number;i+)input>>lacki;input.close();/*是否設(shè)置為聯(lián)名賬戶*/bool question()int i;cout<<"是否設(shè)置為聯(lián)名賬戶 1.否 2.是"<<endl;while(true)cin>>i;if(i=1)return true;else if(i=2)return false;elsecout<<"輸入有誤!請重新輸入!"<<endl;/*/* public */*/public:Link() / 讀出文件中的賬戶數(shù)目,每個及賬戶信息int i;ifstream input("bank.txt");read_length();head=NULL;for(i=1;i<=length;i+)add(true,input);Link() / 保存所有賬戶信息write_file();write_num();cout<<"程序結(jié)束!"<<endl;/*/bool choice() /選擇操作函數(shù)int choose;while(true)cin>>choose;if(choose<1|choose>8) cout<<"輸入有誤!重新輸入"<<endl;elsebreak;if(operation(choose)return true; ;void catalog() /目錄輸出函數(shù)cout<<"請您輸入選擇"<<endl;cout<<"1. 開 戶"<<endl;cout<<"2. 銷 戶"<<endl;cout<<"3. 存 款"<<endl;cout<<"4. 取 款"<<endl;cout<<"5. 轉(zhuǎn) 賬"<<endl;cout<<"6. 查 詢"<<endl;cout<<"7. 退 出"<<endl;cout<<"8. 刷 新 屏 幕"<<endl;int main(int argc, char* argv)Link l;while(true)catalog();if(l.choice()break;return 0;21 / 21

注意事項

本文(C++課程設(shè)計 銀行賬戶管理系統(tǒng))為本站會員(優(yōu)***)主動上傳,裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。 若此文所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng)(點擊聯(lián)系客服),我們立即給予刪除!

溫馨提示:如果因為網(wǎng)速或其他原因下載失敗請重新下載,重復(fù)下載不扣分。




關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號:ICP2024067431-1 川公網(wǎng)安備51140202000466號


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺,本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請立即通知裝配圖網(wǎng),我們立即給予刪除!