c++課程設(shè)計(jì)報(bào)告 (2)--精選文檔_第1頁(yè)
c++課程設(shè)計(jì)報(bào)告 (2)--精選文檔_第2頁(yè)
免費(fèi)預(yù)覽已結(jié)束,剩余15頁(yè)可下載查看

下載本文檔

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

文檔簡(jiǎn)介

1、C+程序設(shè)計(jì)課程設(shè)計(jì)說(shuō)明書(shū)題 目銀行儲(chǔ)蓄系統(tǒng)學(xué) 號(hào)姓 名指導(dǎo)教師 劉麗新日 期2014.121、 內(nèi)蒙古科技大學(xué)課程設(shè)計(jì)任務(wù)書(shū)課程名稱(chēng)面向?qū)ο蟪绦蛟O(shè)計(jì)A課程設(shè)計(jì)設(shè)計(jì)題目銀行儲(chǔ)蓄管理的設(shè)計(jì)指導(dǎo)教師周李勇時(shí)間2013-2014秋學(xué)期 第17、18周一、教學(xué)要求1. 鞏固和加深學(xué)生對(duì)C+語(yǔ)言課程的基本知識(shí)的理解和掌握2. 掌握C+語(yǔ)言編程和程序調(diào)試的基本技能3. 利用C+語(yǔ)言進(jìn)行基本的軟件設(shè)計(jì)4. 掌握書(shū)寫(xiě)程序設(shè)計(jì)說(shuō)明文檔的能力5. 提高運(yùn)用C+語(yǔ)言解決實(shí)際問(wèn)題的能力二、設(shè)計(jì)資料及參數(shù)用C+設(shè)計(jì)一個(gè)系統(tǒng),能提供下列服務(wù):(1) 錄入帳號(hào)信息,格式為:帳號(hào)姓名密碼身份證日期余額利率操作人0908002

2、13435李四12345615020119880808008882011-11-2210.30.0037操作包括存款取款,利息結(jié)算。(2) 登錄功能。輸入帳號(hào)和密碼進(jìn)行登錄。(3) 存款功能。登錄某個(gè)帳號(hào)后,輸入存款金額,更新賬戶的余額。(4) 取款功能。登錄后,輸入取款金額,當(dāng)余額大于取款金額時(shí),執(zhí)行取款操作,(5) 利息結(jié)算。、根據(jù)存款的利率和存款時(shí)間金額計(jì)算利息并登入賬戶。(6) 查詢。查詢某個(gè)時(shí)間段內(nèi)的賬戶操作記錄。三、設(shè)計(jì)要求及成果根據(jù)系統(tǒng)功能要求,可以將問(wèn)題解決分為以下步驟:(1)分析系統(tǒng)中的各個(gè)實(shí)體之間的關(guān)系及其屬性和行為;(2)根據(jù)問(wèn)題描述,設(shè)計(jì)系統(tǒng)的類(lèi)層次;(3)完成類(lèi)層次中

3、各個(gè)類(lèi)的描述(包括屬性和方法);(4)完成類(lèi)中各個(gè)成員函數(shù)的定義;(5)完成系統(tǒng)的應(yīng)用模塊;(6)功能調(diào)試;(7)提交課程設(shè)計(jì)報(bào)告:完成系統(tǒng)總結(jié)報(bào)告以及系統(tǒng)使用說(shuō)明書(shū)2、 目錄一、 內(nèi)蒙古科技大學(xué)課程設(shè)計(jì)任務(wù)書(shū)2二、 目錄3第1章 需求分析4第2章 總體設(shè)計(jì)4第3章 模塊分析5 3.1 client類(lèi)5第4章 詳細(xì)設(shè)計(jì)64.1 工程視圖64.2 類(lèi)圖視圖64.3 主程序流程圖74.3 主要算法的流程圖7第5章 測(cè)試8第6章 總結(jié)9附錄:程序代碼10第1章 需求分析二、設(shè)計(jì)資料及參數(shù)用C+設(shè)計(jì)一個(gè)系統(tǒng),能提供下列服務(wù):(7) 錄入帳號(hào)信息,格式為:帳號(hào)姓名密碼身份證日期余額利率操作人090800

4、213435李四12345615020119880808008882011-11-2210.30.0037操作包括存款取款,利息結(jié)算。(8) 登錄功能。輸入帳號(hào)和密碼進(jìn)行登錄。(9) 存款功能。登錄某個(gè)帳號(hào)后,輸入存款金額,更新賬戶的余額。(10) 取款功能。登錄后,輸入取款金額,當(dāng)余額大于取款金額時(shí),執(zhí)行取款操作,(11) 利息結(jié)算。、根據(jù)存款的利率和存款時(shí)間金額計(jì)算利息并登入賬戶。(12) 查詢。查詢某個(gè)時(shí)間段內(nèi)的賬戶操作記錄。第2章 總體設(shè)計(jì)1.用結(jié)構(gòu)框圖表示各個(gè)功能之間的關(guān)系。 2. 將框圖中系統(tǒng)的各個(gè)功能用文字詳細(xì)的描述。注冊(cè)開(kāi)戶: 對(duì)未進(jìn)行開(kāi)戶的人員進(jìn)行開(kāi)戶,并保存。登陸界面:對(duì)已

5、開(kāi)戶人員進(jìn)行登陸,從而進(jìn)行下一步操作。存錢(qián)界面:輸入存款金額并對(duì)以前剩余金額進(jìn)行計(jì)算。取錢(qián)界面:取錢(qián)后在原金額的基礎(chǔ)上進(jìn)行減法計(jì)算。查詢余額:查詢現(xiàn)在賬戶內(nèi)所剩余金額。 模塊分析3.1 client類(lèi) 制定用戶的成員數(shù)據(jù)類(lèi)型,進(jìn)行登陸于保存功能并實(shí)現(xiàn)用戶的各種功能。代碼為:client:client(int l); string getID() return ID; string getname() return name; string getadress() return adress; string getphnumber() return phnumber; string getcod

6、e() return code; string getmType() return mType; string getcType() return cType; double getbalance() return balance; 第3章 詳細(xì)設(shè)計(jì)3.1 工程視圖說(shuō)明有幾個(gè)源代碼文件,可以截取工程文件視圖表示3.2 類(lèi)圖視圖每個(gè)文件包含哪些類(lèi)和函數(shù),可以截圖說(shuō)明 3.3 主程序流程圖 銀行儲(chǔ)蓄管理系統(tǒng) 登入 開(kāi)戶 退出 存款 查詢余額 取款 修改密碼 填寫(xiě)個(gè)人 信息 3.3 主要算法的流程圖 第4章 測(cè)試運(yùn)行測(cè)試: 圖4.1 主菜單登陸測(cè)試: 圖4.2 登陸賬戶存款測(cè)試: 圖4.3賬戶存款

7、取款測(cè)試: 圖4.4賬戶取款查詢余額測(cè)試: 圖4.5查詢余額修改密碼測(cè)試: 第5章 總結(jié) 通過(guò)這次c+課程設(shè)計(jì),使我學(xué)到面向?qū)ο蟮某绦蛟O(shè)計(jì)思想用到具體的工作和學(xué)習(xí)中,加深對(duì)類(lèi)與對(duì)象的理解,是將計(jì)算機(jī)課程與實(shí)際問(wèn)題相連接的關(guān)鍵步驟。通過(guò)課程設(shè)計(jì)提高了自己分析問(wèn)題,運(yùn)用所學(xué)知識(shí)解決實(shí)際問(wèn)題的能力,并培養(yǎng)了基本的程序設(shè)計(jì)技能。 這次的課程設(shè)計(jì),讓我用一個(gè)相對(duì)比較集中的時(shí)間去練習(xí),特別是自己的動(dòng)手能力,因?yàn)檫@次課程設(shè)計(jì)覆蓋面比較廣泛。經(jīng)過(guò)了這次設(shè)計(jì),讓我找到了學(xué)習(xí)上的漏洞,一些課程設(shè)計(jì)上以前沒(méi)有弄懂的知識(shí),都在這次的課程設(shè)計(jì)上有所提高。附錄:程序代碼#include<iostream>#i

8、nclude<fstream>#include<string>#include<vector> using namespace std;void mainminue();class clientpublic: client();/構(gòu)造函數(shù) client:client(int l); string getID()/獲取身份證號(hào) return ID; string getname()/獲取真實(shí)姓名 return name; string getadress()/獲取地址 return adress; string getphnumber()/獲取電話號(hào)碼 ret

9、urn phnumber; string getcode()/獲取密碼 return code; string getmType()/獲取貨幣種類(lèi) return mType; string getcType()/獲取賬戶種類(lèi) return cType; double getbalance()/獲取賬戶余額 return balance; int getlim() return lim; void setbalance(double m) balance=m; void setmType(string s) mType=s; void setcode(string c) code=c; void

10、 write(ofstream& s) s<<ID<<endl; s<<name<<endl; s<<adress<<endl; s<<phnumber<<endl; s<<code<<endl; s<<cType<<endl; s<<mType<<endl; s<<balance<<endl; s<<lim<<endl<<endl; void read(ifs

11、tream& s) s>>ID; s>>name; s>>adress; s>>phnumber; s>>code; s>>cType; s>>mType; s>>balance; s>>lim; void display() string temp; if(cType="cur") temp="活期存款" else if(cType="ter") temp="定期存款" else temp=&quo

12、t;信用卡賬戶" cout<<"賬戶類(lèi)型 "<<" 余額 "<<"存款年限 "<<endl; cout<<temp<<" "<<balance<<" "<<lim<<" "<<endl; private: string ID,name,adress,phnumber,code; string cType,mType; double ba

13、lance;/賬戶余額 int lim;/存款年限;client:client() ID="" name="" adress="" phnumber="" code="" cType="" mType="" balance=0; lim=0;client:client(int l) /client client_zx; string code_1; int flag=0,lim1=0,clientcount,change; string id,na,ad,

14、ph,cT="",mT="" double ba=0; lim=l; balance=0; mType="人民幣" cout<<"請(qǐng)輸入您的身份證號(hào):" cin>>ID; cout<<"請(qǐng)輸入您的真實(shí)姓名:" cin>>name; cout<<"請(qǐng)輸入您的居住地址:" cin>>adress; cout<<"請(qǐng)輸入您的電話號(hào)碼:" cin>>phnumber;

15、do system("cls"); flag=0; cout<<"請(qǐng)選擇您要?jiǎng)?chuàng)建的賬戶種類(lèi):"<<endl; cout<<"1,活期存款賬戶"<<endl; cout<<"2,定期存款賬戶"<<endl; cout<<"3,信用卡賬戶"<<endl; cin>>change; if(change!=3&&change!=1&&change!=2) cout&

16、lt;<"choice is wrong! "<<endl; getchar(); system("pause"); system("cls"); flag=1; else ifstream instream("zx.in"); vector <client> client1(100); for(int i=0;i<100;i+) client1i.read(instream); if(instream.fail()!=0) break; instream.close(); cl

17、ientcount=i; switch(change) case 1:cType="cur"break; case 2:cType="ter"break; case 3:cType="cre"break; for(i=0;i<clientcount;i+) if(client1i.getID()=ID&&client1i.getcType()=cType) cout<<"賬戶類(lèi)型已創(chuàng)建,按任意鍵返回重新創(chuàng)建" getchar(); flag=1; break; while(flag

18、); do system("cls"); cout<<"請(qǐng)輸入密碼:" cin>>code; cout<<"請(qǐng)?jiān)俅屋斎朊艽a:" cin>>code_1; if(code=code_1) cout<<"賬戶創(chuàng)建成功,按任意鍵返回主菜單"<<endl; getchar(); /system("cls"); ofstream outputstream("zx.in",ios:app); write(output

19、stream); outputstream.close(); mainminue(); else cout<<"密碼輸入不一致,請(qǐng)按任意鍵重新輸入!" getchar(); while(code!=code_1);/主函數(shù)int main() void mainminue(); mainminue();/調(diào)用主菜單函數(shù) return 0;/主菜單函數(shù)void mainminue() int choice; void creater(); void loading(); do system("cls"); cout<<"歡

20、迎使用銀行管理系統(tǒng):"<<endl; cout<<"1:創(chuàng)建賬戶"<<endl; cout<<"2:登入賬戶"<<endl; cout<<"0:退出"<<endl; cin>>choice; if(choice!=0&&choice!=1&&choice!=2) cout<<"choice is wrong! "<<endl; getchar(); sys

21、tem("cls"); /mainminue(); else switch(choice) case 1:creater();break; case 2:loading();break; case 0:break; while(choice!=0);/創(chuàng)建賬戶void creater() client client_zx(0);void loading() int i,j,clientcount,flag=0,choice,s=0,c1,geter,m; string c_id,ct,code_a,mType; char ch; void bancher(); ifstre

22、am instream("zx.in"); vector <client> client1(100); for(i=0;i<100;i+) client1i.read(instream); if(instream.fail()!=0) break; instream.close(); clientcount=i; cout<<"請(qǐng)輸入身份證號(hào)"<<endl; cin>>c_id; for(i=0;i<clientcount;i+) if(client1i.getID()=c_id) flag=1

23、;break; if(!flag) system("cls"); cout<<"您尚未創(chuàng)建任何賬戶,是否創(chuàng)建?" cout<<"1,yes" cout<<"2,no" cin>>choice; switch(choice) case 1:creater();break; case 2:break; else vector <client> zx(3); for(i=0,j=0;i<3&&j<clientcount;j+) if(

24、client1j.getID()=c_id) zxi+=client1j; j=i; vector <client> elseclient(100-j); for(i=0,m=0;(m<(100-j)&&(i<100);i+) if(client1i.getID()!=c_id) elseclientm+=client1i; ofstream output("zx.in",ios:app); for(i=0;i<m;i+) elseclienti.write(output); output.close(); do system(

25、"cls"); cout<<"請(qǐng)選擇你要登入的賬戶類(lèi)型" cout<<"1,活期存款賬戶"<<endl; cout<<"2,定期存款帳戶"<<endl; cout<<"3,信用卡賬戶"<<endl; cin>>c1; while(c1!=1&&c1!=2&&c1!=3); switch(c1) case 1:ct="cur"break; case 2

26、:ct="ter"break; case 3:ct="cre"break; for(i=0;i<j;i+) if(zxi.getcType()=ct) flag=0;break; if(flag) cout<<"您尚未創(chuàng)建此種賬戶類(lèi)型!" else do cout<<"請(qǐng)輸入密碼" cin>>code_a; for(i=0;i<j;i+) if(zxi.getcode()=code_a) flag=1;break; if(!flag) cout<<&quo

27、t;密碼錯(cuò)誤:請(qǐng)重新輸入:" s=1; else cout<<"登陸成功!"<<endl; getchar(); do do system("pause"); system("cls"); cout<<"1,取款"<<endl; cout<<"2,存款"<<endl; cout<<"3,查詢余額"<<endl; cout<<"4,同ID下其它賬戶信息

28、"<<endl; cout<<"5,修改密碼"<<endl; cout<<"6,返回主菜單"<<endl; cin>>c1; while(c1!=1&&c1!=2&&c1!=3&&c1!=4&&c1!=5&&c1!=6); if(c1=1) /取款 cout<<"請(qǐng)輸入取款金額:"<<endl; cin>>geter; if(zxi.get

29、cType()="cur")&&(geter<=zxi.getbalance() cout<<"請(qǐng)取錢(qián)"<<endl; getchar(); zxi.setbalance(zxi.getbalance()-geter); else if(zxi.getcType()="cre")&&(zxi.getbalance()>=(geter-10000) cout<<"請(qǐng)取錢(qián)"<<endl; getchar(); zxi.setba

30、lance(zxi.getbalance()-geter); else if(zxi.getcType()="ter")&&(geter<=zxi.getbalance()&&(zxi.getlim()=0) cout<<"請(qǐng)取錢(qián)"<<endl; getchar(); zxi.setbalance(zxi.getbalance()-geter); else if(zxi.getcType()="cur") cout<<"賬戶余額不足"<

31、<endl; else if(zxi.getcType()="cre") cout<<"賬戶透支過(guò)度"<<endl; else cout<<"定期存款用戶未到期"<<endl; getchar(); else if(c1=2) /存款 do system("cls"); cout<<"請(qǐng)選擇貨幣類(lèi)型"<<endl; cout<<"1,人民幣"<<endl; cout<<"2,美元"<<endl; ch=getchar(); whil

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 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ì)用戶上傳內(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)論