版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、分類(lèi)號(hào)華北水利水電大學(xué)NorthChinaInstituteofWaterConservancyandHydroelectricPower課程設(shè)計(jì)題目簡(jiǎn)易銀行卡管理系統(tǒng)院系信息工程學(xué)院專(zhuān)業(yè)計(jì)算機(jī)科學(xué)與技術(shù)姓名張樂(lè)民學(xué)號(hào)201215211指導(dǎo)教師張帆1題目的內(nèi)容及要求1.1簡(jiǎn)易銀行卡管理系統(tǒng)(1) 開(kāi)戶(hù):創(chuàng)建一個(gè)新的賬戶(hù),接受用戶(hù)輸入的身份證號(hào),以及賬戶(hù)密碼,判斷用戶(hù)輸入的身份證號(hào)是否唯一且賬戶(hù)密碼是否符合要求,如驗(yàn)證成功則為該用戶(hù)生成一個(gè)唯一的帳號(hào)。(2) 存款:在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)輸入的存款金額,并對(duì)該帳號(hào)的存款信息進(jìn)行更新。(3) 取款:在用戶(hù)輸入正確的帳號(hào)和密碼的
2、情況下,接受用戶(hù)輸入的取款金額。取款金額不應(yīng)該大丁當(dāng)前帳號(hào)存款金額,當(dāng)取款金額不大丁當(dāng)前帳號(hào)存款金額時(shí),執(zhí)行取款操作,并對(duì)該帳戶(hù)的存款信息進(jìn)行更新。(4) 掛失:在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)掛失操作。當(dāng)帳號(hào)掛失后,與該帳號(hào)相關(guān)的操作都將被禁止。(5) 銷(xiāo)戶(hù):在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)銷(xiāo)戶(hù)。當(dāng)用戶(hù)銷(xiāo)戶(hù)后,該帳號(hào)將被永久刪除。(6) 轉(zhuǎn)帳:在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)轉(zhuǎn)賬操作,轉(zhuǎn)帳金額不應(yīng)該大丁當(dāng)前帳號(hào)存款金額,當(dāng)轉(zhuǎn)帳金額不大丁當(dāng)前帳號(hào)存款金額時(shí),執(zhí)行轉(zhuǎn)帳操作,并對(duì)該帳戶(hù)的存款信息及轉(zhuǎn)帳的接受賬戶(hù)的存款信息進(jìn)行更新。(7) 修改賬戶(hù)密碼:在用戶(hù)輸入
3、正確的帳號(hào)和密碼的情況下,接受用戶(hù)修改密碼操作,用戶(hù)輸入的原密碼,若用戶(hù)輸入的密碼與原密碼匹配,則接受用戶(hù)輸入的新密碼,若用戶(hù)兩個(gè)輸入的密碼相同,則修改賬戶(hù)密碼,并對(duì)數(shù)據(jù)文件進(jìn)行更新操作。查看余額:在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)查看余額操作,該模塊只涉及數(shù)據(jù)查詢(xún),并不涉及數(shù)據(jù)文件更新操作。(8) 查看用戶(hù)交易歷史:在用戶(hù)輸入正確的帳號(hào)和密碼的情況下,接受用戶(hù)查看用戶(hù)交易歷史操作,系統(tǒng)將顯示當(dāng)前賬戶(hù)的最近的存、取款操作記錄,該模塊只涉及數(shù)據(jù)查詢(xún),并不涉及數(shù)據(jù)文件更新操作。2小組成員分工及本人任務(wù)實(shí)驗(yàn)內(nèi)容共分為九個(gè)子功能,設(shè)計(jì)時(shí)采用模塊化設(shè)計(jì),每人分配三個(gè)功能,獨(dú)立完成,最后進(jìn)行綜合
4、調(diào)試。張樂(lè)民:存款取款轉(zhuǎn)賬杜世豪:修改帳戶(hù)密碼查看余額查看用戶(hù)交易歷史婁旭陽(yáng):開(kāi)戶(hù)掛失銷(xiāo)戶(hù)3需求分析3.1總體情況:定義結(jié)構(gòu)體數(shù)組,數(shù)據(jù)成員主要有用戶(hù)名、密碼、交易歷史、掛失標(biāo)志、余額、身份證等內(nèi)容,再定義公有類(lèi),在主界面上,可供用戶(hù)進(jìn)行開(kāi)戶(hù)、存取款、轉(zhuǎn)賬、查看余額、交易歷史、掛失、銷(xiāo)戶(hù)等操作,為了實(shí)現(xiàn)界面的回復(fù),定義了大量的函數(shù)調(diào)用,在控制用戶(hù)的循環(huán)操作時(shí),主要采用了while及ifelse循環(huán)。3.2本人任務(wù)部分:存款:用戶(hù)自主實(shí)現(xiàn)存款功能,遇到問(wèn)題時(shí),可給予一定提示,存款之后,對(duì)數(shù)據(jù)進(jìn)行更新。取款:用戶(hù)自主實(shí)現(xiàn)存款功能,遇到問(wèn)題時(shí),可給予一定提示,存款之后,對(duì)數(shù)據(jù)進(jìn)行更新。轉(zhuǎn)賬:用戶(hù)自主
5、實(shí)現(xiàn)轉(zhuǎn)賬功能,遇到問(wèn)題時(shí),可給予一定提示,轉(zhuǎn)賬之后,對(duì)雙方賬戶(hù)的數(shù)據(jù)進(jìn)行更新。4概要設(shè)計(jì)總體數(shù)據(jù)結(jié)構(gòu)為結(jié)構(gòu)體數(shù)組設(shè)計(jì),采用順序存儲(chǔ)方式,總體的程序設(shè)計(jì)沒(méi)有涉及太過(guò)復(fù)雜的數(shù)據(jù)結(jié)構(gòu),可采用較為簡(jiǎn)單的順序存儲(chǔ)方式。structSAccount(intusername/整型定義用戶(hù)名intpassword;整型定義密碼intid;/整型定義身份證號(hào)intmoney;/整型定義余額intlost;/整型定義掛失charhistory1024;字符型定義歷史account40;結(jié)構(gòu)體數(shù)組數(shù)量最多為40個(gè)主函數(shù)將實(shí)現(xiàn)檢測(cè)登錄的賬號(hào)密碼是否匹配,在登錄成功之后,才會(huì)調(diào)用存款、取款、轉(zhuǎn)賬函數(shù),進(jìn)入相對(duì)應(yīng)的界面。
6、轉(zhuǎn)賬中,轉(zhuǎn)賬的對(duì)象的用戶(hù)名將在主函數(shù)中給出,然后調(diào)用轉(zhuǎn)賬函數(shù),對(duì)用戶(hù)名是否存在進(jìn)行判斷。定義WhereUser函數(shù)即為找到用戶(hù)位置,在轉(zhuǎn)賬中調(diào)用,找到轉(zhuǎn)賬對(duì)象的位置,對(duì)其的余額進(jìn)行計(jì)算。5詳細(xì)設(shè)計(jì)5.1類(lèi)型定義均在程序定義了整型常量與字符申型變量5.2算法描述存款:輸入界面,對(duì)存入金額的判斷,符合要求時(shí),對(duì)余額進(jìn)行更新,并把新的數(shù)據(jù)寫(xiě)入至文件中。取款:輸入界面,對(duì)取款金額進(jìn)行判斷,當(dāng)取款金額小丁余額時(shí),取款成功,更新余額及交易歷史。轉(zhuǎn)帳:檢查轉(zhuǎn)賬賬號(hào)是否存在,存在時(shí),當(dāng)轉(zhuǎn)賬金額小丁余額時(shí),可進(jìn)行轉(zhuǎn)賬,對(duì)雙方賬戶(hù)信息進(jìn)行更新,不存在時(shí),轉(zhuǎn)賬失敗。就轉(zhuǎn)賬進(jìn)行詳細(xì)介紹。主函數(shù):case4:syste
7、m("cls");intusername;cout<<"請(qǐng)輸入你要轉(zhuǎn)入的賬號(hào):"cin>>username;Virement(num,username);return1;break;調(diào)用至voidVirement(intnum,intusername)中,使用if(CheckUsername(username)else語(yǔ)句對(duì)輸入的帳號(hào)進(jìn)行判斷,帳號(hào)存在時(shí),輸入轉(zhuǎn)賬金額,當(dāng)轉(zhuǎn)賬金額小丁賬戶(hù)余額時(shí),操作成功,找到轉(zhuǎn)賬對(duì)象的位置,對(duì)雙方余額進(jìn)行計(jì)算:intn=WhereUser(username);accountnum.money-=a
8、;accountn.money+=a;然后定義字符申型變量:charstr110;charstr21024;charstr31024;strcpy(str2,accountnum.history);itoa(a,str1,10);wsprintf(str3,"%s取出%s元",str2,str1);strcpy(accountnum.history,str3);UpdateAllfile(account);使用strcpy字符申復(fù)制函數(shù),將str1,str2的數(shù)值賦給str3,將str3的值賦給accountnum.history交易歷史,然后更新所有數(shù)據(jù)到文件,每次操作,
9、如存取款,都必須對(duì)余額進(jìn)行計(jì)算,同時(shí)更新交易歷史。6源代碼:#include<stdio.h>#include<iostream.h>#include<string.h>#include<fstream.h>#include<stdlib.h>#include<windows.h>#defineMAX1024structSAccountintusername;intpassword;intid;intmoney;intlost;charhistory1024;account40;classCAccountpublic:in
10、tusername;/賬號(hào)intpassword;/密碼intid;/身份證intmoney;余額intlost;/掛失標(biāo)志char*history;歷史intOpenAccount(intid,intpassword);/開(kāi)戶(hù)(返回一個(gè)賬號(hào))boolCheckId(intid,SAccountsa);/檢查是否存在ID;*username*存在trueboolCheckUsername(intusername)intcount=GetCount();Readfile(account,count);for(inti=0;i<count;i+)if(username=accounti.us
11、ername)returntrue;returnfalse;*檢查賬號(hào)密碼是否匹配心心心心心心心心心*boolCheckPassword(intusername,intpassword)(intcount=GetCount();Readfile(account,count);for(inti=0;i<count;i+)(if(username=accounti.username&&password=accounti.password)returntrue;returnfalse;找到用戶(hù)位置*心心心心心心心心心*intWhereUser(intusername)(intc
12、ount=GetCount();Readfile(account,count);for(inti=0;i<count;i+)(if(username=accounti.username)returni;*心心心心心心心心心*voidSaveMoney(intnum)存款(inta;cout<<"請(qǐng)問(wèn)你要存入的金額為:"<<endl;cin>>a;while(a<=0)(cout<<"輸入錯(cuò)誤,請(qǐng)重新輸入:"<<endl;cin>>a;intcount=GetCount()
13、;Readfile(account,count);accountnum.money=accountnum.money+a;cout<<"操作已成功"<<endl;cout<<"您已成功存入:"<<a<<"元"<<endl;charstr110;charstr21024;charstr31024;strcpy(str2,accountnum.history);itoa(a,str1,10);wsprintf(str3,"%s存入%s元",str2
14、,str1);strcpy(accountnum.history,str3);UpdateAllfile(account);*心心心心心心心心心*voidGetMoney(intnum)(inta;cout<<"請(qǐng)輸入款金額:"<<endl;cin>>a;while(a<=0)(cout<<"請(qǐng)重新輸入取款金額:"<<endl;cin>>a;intcount=GetCount();Readfile(account,count);if(accountnum.money<a)
15、(cout<<"對(duì)不起,你的余額不足!"<<endl;else(accountnum.money=accountnum.money-a;charstr110;charstr21024;charstr31024;strcpy(str2,accountnum.history);itoa(a,str1,10);wsprintf(str3,"%s取出%s元",str2,str1);strcpy(accountnum.history,str3);UpdateAllfile(account);此處改變歷史記錄cout<<"
16、;操作成功,請(qǐng)查收鈔票"<<endl;*轉(zhuǎn)*voidVirement(intnum,intusername)/供帳位置num的賬戶(hù)向username轉(zhuǎn)入if(CheckUsername(username)inta;cout<<"請(qǐng)問(wèn)你要轉(zhuǎn)帳的金額為:";cin>>a;while(a<=0)cout<<"您輸入轉(zhuǎn)帳金額小丁等丁0"<<endl;cout<<"請(qǐng)重新輸入轉(zhuǎn)帳金額:"cin>>a;intcount=GetCount();Rea
17、dfile(account,count);if(accountnum.money<a)(cout<<"對(duì)不起,你的余額不足!"<<endl;return;else(intn=WhereUser(username);accountnum.money-=a;accountn.money+=a;charstr110;charstr21024;charstr31024;strcpy(str2,accountnum.history);itoa(a,str1,10);wsprintf(str3,"%s取出%s元",str2,str1);
18、strcpy(accountnum.history,str3);charstr410;charstr51024;charstr61024;strcpy(str5,accountn.history);itoa(a,str4,10);wsprintf(str6,"%s存入%s元",str5,str4);strcpy(accountn.history,str6);UpdateAllfile(account);cout<<"轉(zhuǎn)帳成功"<<endl;elsecout<<"您要轉(zhuǎn)入的賬號(hào)不存在,操作失敗"<
19、;<endl;登陸成功后的菜單界面,*心心心心心心心心心*intLodingView(intnum)intflag=0;intcount=GetCount();Readfile(account,count);cout<<”*”<<endl;cout<<"*歡迎你,用戶(hù)"<<accountnum.username<<"*"<<endl;cout<<”*”<<endl;cout<<"*1:存款2:取款3:修改密碼*"<&
20、lt;endl;cout<<"*4:轉(zhuǎn)賬5:余額6:交易歷史*"<<endl;cout<<"*0:返回主界面*"<<endl;cout<<”*”<<endl;cout<<"請(qǐng)輸入你的指令:"cin>>flag;returnflag;7運(yùn)行結(jié)果及分析7.1測(cè)試數(shù)據(jù):(1)主界面TF:BankManjgeSy5temDebugBanklVfanageSytem-exe"(2)首先進(jìn)行開(kāi)戶(hù),創(chuàng)立唯一性賬號(hào),'F:BankMdna
21、geSy5temDebugBdnkManage5ystem.exe"銀行卡管理系統(tǒng)一一開(kāi)戶(hù)66s100004Jh-»IKiJJX.:6碼功號(hào)A'入戶(hù)的MMMMr1r銀行卡管理系統(tǒng)KICKXMMMM”開(kāi)戶(hù)2:登陸玦解除掛失3:掛買(mǎi)4:|p6:退出累統(tǒng)請(qǐng)總?cè)肽銤裰技?3)登陸,進(jìn)入存取款界面r:drIk.IvIdndyitsrnuy_DdrikivijndyrsyhLfiii.exK輸入賬號(hào)以湖胸4輸入密碼=的咒財(cái)jiXKXXKNXKXXitiiXiigxmiXWjKXXMXiCisiiCiCMiOCjKKXMXXKXKMXX誠(chéng)X1M禱XlKiKX歡迎4爾.用戶(hù)1003
22、04XJOfXKJOCX:MJtXXJCWXJtJIXIOOtKJIXKXKICMiaBOtKiMKXiMlOCXHJrtXJtICXItXXJtXXKK*l:#t2遺毯3邃恩密碼i(WM14*4二轉(zhuǎn)賬余額6咬易歷史*U:推向全界面««*XX秘K*KX舞iMX葛建胃*M;MXM菖就KM直皆>«親*;*-><*->1*:-1<*菌*請(qǐng)輸入你的指令,(4)存款請(qǐng)問(wèn)你要存入的金額為:11111辱醍瞬足11111元KJOCitmiimK拭XXXXKXXliKXKKKUKXK拭WLH拭itKKWLK拭HIM拭KK拭KIf拭KHMititMiKH
23、歡迎你g用戶(hù)麗麗4;尊瀑穗賽b:iME王界面mxnxjKlOOiKXKKiOiKXliHiCMIiMililiMtIiKXMKXKKiiliMiififiMmiKXJWMKlMXHitiMk青輸入你的指令*取款請(qǐng)輸入款金額=舞作成功,請(qǐng)查收鈔票:M*:M!M*M:M!M歡迎你,用戶(hù)朋。4XM!XMtMX甄*ItNiXIfXICKXIKNXaOIXXKXXlitXlitXXKIOCKXXKXXKHXNmCWIXiaM:p*"懷就2嘿瑟3噬苞密碼*«*4:轉(zhuǎn)賬5:余額6=父易歷史*隊(duì)返回主界面MKKMMiXi<*iXKlHtitirWlC:MM:lfNiMWitKNM:i
24、(ltM:KfrM:itXiKIOiM;Wif青輸入你的指令、(5) 轉(zhuǎn)賬!-:BankWanageystemEJebugBankManjgeSystem,exe查看余額及交易歷史rDdraitividfidyeyLtrrriMruuyDdriK.i¥iandy«iyiierTLexEF:EankManageSystemD?bugBankManageSystem.exe'開(kāi)戶(hù)成功存入:LiiH元取出44元取出珀元取出77刀無(wú)xxxxocx歡迎你,用戶(hù)100麗4X2:W3=g:MltXXS:余額6:父跤返回主界面請(qǐng)輸入你的指令,7.2測(cè)試結(jié)果:代碼所執(zhí)行的功能順暢運(yùn)行,余額的計(jì)算、交易歷史的界面較為活晰合理,沒(méi)有錯(cuò)誤,達(dá)到預(yù)先設(shè)想功能。7.3時(shí)間復(fù)雜度分析:時(shí)間復(fù)雜度O(n)7.4改進(jìn)思想:本次程序已經(jīng)是在大家討論并經(jīng)過(guò)多次修改的程序,但是確實(shí)存在著許多不足。其一:希望可以就交易歷史的函數(shù)進(jìn)行修改,讓其交易歷史的記錄規(guī)范化,程序中的交易歷史記錄是無(wú)序的,希望可以就存入的錢(qián),取出的錢(qián),轉(zhuǎn)賬的錢(qián)按順序進(jìn)行顯示;其二:對(duì)交易的時(shí)間進(jìn)行編寫(xiě),在查看交易歷史時(shí),可以看到每次交易的準(zhǔn)確時(shí)問(wèn)。8課程設(shè)計(jì)總結(jié)本次課程設(shè)計(jì)是一次嚴(yán)謹(jǐn)?shù)膶?shí)踐操作,在設(shè)計(jì)過(guò)程中,根據(jù)“課程設(shè)計(jì)報(bào)告內(nèi)容要求”,對(duì)組員進(jìn)行了詳細(xì)的分工,對(duì)設(shè)計(jì)流程也有詳細(xì)的規(guī)劃,
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 臨時(shí)用電安全隱患排查
- 2024-2025學(xué)年八年級(jí)上學(xué)期地理期中模擬試卷(人教版+含答案解析)
- 江蘇省徐州市銅山區(qū)2023-2024學(xué)年九年級(jí)上學(xué)期期中語(yǔ)文試卷(含答案解析)
- 小學(xué)三年級(jí)上冊(cè)生活生命與安全教案
- 高三心理健康教育教案匯編
- 幼兒園中班安全教育教案28篇
- 三年級(jí)心理健康教育備課
- 2024年人教版中考英語(yǔ)如何提升A卷閱讀理解能力練習(xí)(無(wú)答案)
- 2024年福建省新高考生物試卷真題(含答案解析)
- 常見(jiàn)感染性疾病曹彬
- 特種行業(yè)許可證申請(qǐng)表
- 書(shū)簽式三項(xiàng)并列關(guān)系圖表PPT課件
- 淺析牽引變壓器非電量保護(hù)誤動(dòng)原因及解決方案
- 材料樣品封樣標(biāo)簽
- 小學(xué)二年級(jí)等量代換
- 客位大金湖旅游船初步設(shè)計(jì)
- 隨機(jī)信號(hào)處理MATLAB仿真報(bào)告
- 冀教2013 一年級(jí)英語(yǔ)上冊(cè)教案
- KCl-NaCl-H2O三元體系相圖
- 總建筑面積1972平米農(nóng)作物種質(zhì)資源庫(kù)建設(shè)項(xiàng)目可行性研究報(bào)告模板-備案立項(xiàng)
- 人教版地理必修一教材解讀(2019年版)
評(píng)論
0/150
提交評(píng)論