版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、PAGE 遼 寧 工 業(yè) 大 學(xué) 課 程 設(shè) 計(jì) 說(shuō) 明 書(shū)(論 文)遼 寧 工 業(yè) 大 學(xué)C+語(yǔ)言程序設(shè)計(jì)課程設(shè)計(jì)(論文)題目: 個(gè)人銀行管理系統(tǒng) 院(系): 專(zhuān)業(yè)班級(jí): 學(xué) 號(hào): 學(xué)生姓名: 指導(dǎo)教師: 教師職稱(chēng): 起止時(shí)間:2011.12。12-2011。12.25課程設(shè)計(jì)(論文)任務(wù)及評(píng)語(yǔ)院(系): 教研室:軟件教研室學(xué) 號(hào)學(xué)生姓名專(zhuān)業(yè)班級(jí)課程設(shè)計(jì)(論文)題目個(gè)人銀行管理系統(tǒng)課程設(shè)計(jì)(論文)任務(wù)程序設(shè)計(jì)的任務(wù)與要求:掌握面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言C+的基本語(yǔ)法掌握C+面向?qū)ο笤O(shè)計(jì)的思想掌握VC+6。0與DEV C+ 開(kāi)發(fā)工具的使用 (4)。 運(yùn)用標(biāo)準(zhǔn)C+規(guī)范設(shè)計(jì)應(yīng)用程序設(shè)計(jì)過(guò)程中,要嚴(yán)格遵守
2、設(shè)計(jì)的時(shí)間安排,聽(tīng)從指導(dǎo)教師的指導(dǎo)。正確地完成上述內(nèi)容,規(guī)范完整地撰寫(xiě)出設(shè)計(jì)報(bào)告.指導(dǎo)教師評(píng)語(yǔ)及成績(jī)成績(jī): 指導(dǎo)教師簽字: 年 月 日遼 寧 工 業(yè) 大 學(xué) 課 程 設(shè) 計(jì) 說(shuō) 明 書(shū)(論 文)PAGE 14 目 錄 TOC o 1-3” h z u HYPERLINK l ”_Toc310931816 第1章 課程設(shè)計(jì)目的與要求 PAGEREF _Toc310931816 h 1 HYPERLINK l _Toc310931817” 1。1 設(shè)計(jì)目的 PAGEREF _Toc310931817 h 1 HYPERLINK l _Toc310931818” 1.2實(shí)驗(yàn)環(huán)境 PAGEREF _T
3、oc310931818 h 1 HYPERLINK l ”_Toc310931819 1。3預(yù)備知識(shí) PAGEREF _Toc310931819 h 1 HYPERLINK l ”_Toc310931820” 1。4設(shè)計(jì)要求 PAGEREF _Toc310931820 h 1 HYPERLINK l ”_Toc310931821” 第2章 課程設(shè)計(jì)內(nèi)容 PAGEREF _Toc310931821 h 2 HYPERLINK l ”_Toc310931822 2.1 課題描述 PAGEREF _Toc310931822 h 2 HYPERLINK l _Toc310931823 2。2 系統(tǒng)設(shè)計(jì)
4、 PAGEREF _Toc310931823 h 2 HYPERLINK l ”_Toc310931824 2。2。1功能分析 PAGEREF _Toc310931824 h 2 HYPERLINK l ”_Toc310931825 2。2。2面向?qū)ο笤O(shè)計(jì) PAGEREF _Toc310931825 h 2 HYPERLINK l _Toc310931826 2.2.2類(lèi)成員描述 PAGEREF _Toc310931826 h 2 HYPERLINK l _Toc310931827 2.3程序?qū)崿F(xiàn) PAGEREF _Toc310931827 h 2 HYPERLINK l ”_Toc31093
5、1828 2.3。1源碼分析 PAGEREF _Toc310931828 h 2 HYPERLINK l ”_Toc310931829” 2。3。2運(yùn)行結(jié)果 PAGEREF _Toc310931829 h 2 HYPERLINK l ”_Toc310931830 第3章 課程設(shè)計(jì)總結(jié) PAGEREF _Toc310931830 h 3 HYPERLINK l ”_Toc310931831” 參考文獻(xiàn) PAGEREF _Toc310931831 h 4第1章 課程設(shè)計(jì)目的與要求1。1 設(shè)計(jì)目的將理論教學(xué)中涉及到的知識(shí)點(diǎn)貫穿起來(lái),對(duì)不同的數(shù)據(jù)類(lèi)型、程序控制結(jié)構(gòu)、數(shù)據(jù)結(jié)構(gòu)作一比較和總結(jié),結(jié)合設(shè)計(jì)題目
6、進(jìn)行綜合性應(yīng)用,對(duì)所學(xué)知識(shí)達(dá)到融會(huì)貫通的程度.通過(guò)課程設(shè)計(jì),學(xué)生在下述各方面的能力應(yīng)該得到鍛煉:(1)進(jìn)一步鞏固、加深學(xué)生所學(xué)專(zhuān)業(yè)課程C+語(yǔ)言教程的基本理論知識(shí),理論聯(lián)系實(shí)際,進(jìn)一步培養(yǎng)學(xué)生綜合分析問(wèn)題,解決問(wèn)題的能力.(2)全面考核學(xué)生所掌握的基本理論知識(shí)及其實(shí)際業(yè)務(wù)能力,從而達(dá)到提高學(xué)生素質(zhì)的最終目的。(3)利用所學(xué)知識(shí),開(kāi)發(fā)小型應(yīng)用系統(tǒng),掌握運(yùn)用C+語(yǔ)言編寫(xiě)調(diào)試應(yīng)用系統(tǒng)程序,訓(xùn)練獨(dú)立開(kāi)發(fā)應(yīng)用系統(tǒng),進(jìn)行數(shù)據(jù)處理的綜合能力.(4)對(duì)于給定的設(shè)計(jì)題目,如何進(jìn)行分析,理清思路,并給出相應(yīng)的數(shù)學(xué)模型。(5)掌握面向?qū)ο蟪绦蛟O(shè)計(jì)的方法。(6)熟練掌握C+語(yǔ)言的基本語(yǔ)法,靈活運(yùn)用各種數(shù)據(jù)類(lèi)型。(7)進(jìn)
7、一步掌握在集成環(huán)境下如何調(diào)試程序和修改程序。1。2實(shí)驗(yàn)環(huán)境硬件要求能運(yùn)行Windows 操作系統(tǒng)的微機(jī)系統(tǒng).C+語(yǔ)言應(yīng)用程序開(kāi)發(fā)軟件使用:VC+ 系統(tǒng),或其他C+語(yǔ)言應(yīng)用程序開(kāi)發(fā)軟件.1.3預(yù)備知識(shí)熟悉C+語(yǔ)言程序設(shè)計(jì)的基本知識(shí)及VC+編輯器的使用方法。1.4設(shè)計(jì)要求1。仔細(xì)分析設(shè)計(jì)題目,畫(huà)出程序流程圖,編寫(xiě)程序源代碼。2。積極上機(jī)調(diào)試源程序,增強(qiáng)編程技巧與調(diào)程能力。3。認(rèn)真書(shū)寫(xiě)課程設(shè)計(jì)預(yù)習(xí)報(bào)告,課程設(shè)計(jì)說(shuō)明書(shū).4.遵守課程設(shè)計(jì)要求和機(jī)房管理制度,服從指導(dǎo)教師的安排,確保課程設(shè)計(jì)的順利完成課程設(shè)計(jì)內(nèi)容。第2章 課程設(shè)計(jì)內(nèi)容2.1 課題描述熟悉C+工程開(kāi)發(fā)的過(guò)程、頭文件和源文件之間的關(guān)系,掌握類(lèi)
8、、繼承及派生、虛函數(shù)、多態(tài)性在C+面向?qū)ο蟪绦蛟O(shè)計(jì)中的體現(xiàn),掌握一個(gè)類(lèi)的對(duì)象作為另外一個(gè)類(lèi)的成員的實(shí)現(xiàn)方法。掌握子類(lèi)對(duì)象與父類(lèi)對(duì)象的關(guān)系,熟悉C+中流的使用,養(yǎng)成良好的編程習(xí)慣。在掌握C+面向?qū)ο蟪绦蛟O(shè)計(jì)方法的基礎(chǔ)上,使用VC+6。0結(jié)合課本內(nèi)容完成以下內(nèi)容的實(shí)現(xiàn):完成個(gè)人銀行賬戶管理程序的編寫(xiě)、編譯、調(diào)試、運(yùn)行,完成基類(lèi)Account、子類(lèi)SavingsAccount及CreditAccount的聲明及定義.實(shí)現(xiàn)Accumulator類(lèi)及Date類(lèi)。利用C+中流的概念實(shí)現(xiàn)賬戶信息的存儲(chǔ)。在Account類(lèi)中添加數(shù)據(jù)成員:Password,并對(duì)應(yīng)編寫(xiě)該數(shù)據(jù)成員的get函數(shù)。在主函數(shù)中實(shí)現(xiàn)賬戶對(duì)
9、象創(chuàng)建時(shí)從鍵盤(pán)輸入構(gòu)造函數(shù)需要的信息。在輸出及需要用戶輸入的時(shí)候要給出相應(yīng)的提示信息。2.2 系統(tǒng)設(shè)計(jì)2。2.1功能分析個(gè)人銀行賬號(hào)管理模塊:1。主界面主要導(dǎo)航欄有:個(gè)人銀行賬號(hào)管理系統(tǒng),已存入三個(gè)賬戶的信息,有六個(gè)服務(wù)包括存款、取款、顯示個(gè)賬戶信息、改變?nèi)掌凇⑦M(jìn)入下個(gè)月、退出。2。顯示個(gè)賬戶信息頁(yè)面顯示您的賬戶序號(hào)、賬號(hào)和收支平衡,在第二行顯示日期和賬戶總額。3。存款頁(yè)面顯示請(qǐng)選擇您的賬戶序號(hào),輸入賬戶序號(hào)之后,顯示請(qǐng)輸入您的存款金額,從后臺(tái)數(shù)據(jù)庫(kù)中找到該用戶余額記錄,修改余額,并將該存款事件的相應(yīng)信息寫(xiě)人數(shù)據(jù)庫(kù),同時(shí)在下面顯示您的存款日期、賬號(hào),存入的金額,總金額.4取款頁(yè)面 取款頁(yè)面和存
10、款頁(yè)面提示的信息相似,提供數(shù)據(jù)輸入界面,等待用戶輸入取款金額,如果取款金額大于該用戶卡上的余額則不能取款,或者將新的余額寫(xiě)人文件,并將本次取款事件寫(xiě)入文件同時(shí)將取錢(qián)的金額顯示在頁(yè)面上.2。2。2面向?qū)ο笤O(shè)計(jì) Date-year : int-month : int-day : int-totalDays : int+Date(year : int, month : int, day : int) +getYear() : int+getMonth() : int+getDay() : int + getMaxDay() : int + isLeapYear() : bool + show() +
11、 operator - (date : Date) : intAccumulator-lastDate : Date-value : double-sum : double+Accumulator(date : Date, value : double) +getSum(date : Date) : double+change(date : Date, value : double)+reset(date : Date, value : double)SavingsAccount-acc : Accumulator-rate : double+SavingsAccount(date : Dat
12、e, id : int, rate : double) +getRate() : double+deposit(date : Date, amount : double, desc : string)+withdraw(date : Date, amount : double, desc : string)+settle(date : Date)Account-id : string-balance : double-total : double#Account(date : Date, id : int)#record(date: Date, amount : double, desc :
13、string)#error(msg:string)+getId() : int +getBalance() : double + deposit(date : Date, amount : double, desc : string) + withdraw(date : Date, amount : double, desc : string) + settle(date : Date) + show()+getTotal() : doubleCreditAccount-acc : Accumulator-credit : double-rate : double-fee : double -
14、getDebt() : double+CreditAccount(date : Date, id : int, credit : double, rate : double, fee : double) +getCredit() : double +getRate() : double +getFee() : double +getAvailableCredit() : double+deposit(date : Date, amount : double, desc : string)+withdraw(date : Date, amount : double, desc : string)
15、+settle(date : Date)+show()2.2.2類(lèi)成員描述StartcincountI=1Iusing namespace std;int main()cout -個(gè)人銀行賬戶管理系統(tǒng)!- ”endl;Date date(2011,6,1); /起始日期 /初始賬戶 SavingsAccount sa1(date,S3755271”,0。015,123);SavingsAccount sa2(date,”02342342,0.015,”456);CreditAccount ca(date,”C5392394”,10000,0.0005,50,”789”);Account acc
16、ounts=sa1,&sa2,&ca;const int n=sizeof(accounts)/sizeof(Account);cout(d)存款 ”endl;cout(w) 取款”endl;cout”(s) 顯示各賬戶信息 ”endl;cout”(c)改變?nèi)掌?endl;cout(n) 進(jìn)入下個(gè)月 ”endl;cout(e)退出 endl;char cmd;do /顯示日期和總金額coutendl;date.show();coutt賬戶總金額Account:getTotal()endl;coutendl;coutcmd;switch(cmd)cased: /存入現(xiàn)金coutindex;if(
17、index=0|index=1index=2)coutamount;accountsindex-deposit(date,amount,desc);elsecout”賬戶號(hào)錯(cuò)誤!”;break;casew: /取出現(xiàn)金 coutindex;cout請(qǐng)輸入您的密碼:;cinpwd;pass=accountsindex-getPassword();if(pare(pwd)=0)cout”密碼正確!”endl; coutamount; accountsindex-withdraw(date,amount,desc); elsecout您輸入的密碼錯(cuò)誤!”endl;break;cases: /查詢(xún)各賬
18、戶信息for( i=0;in;i+)cout”i”;accountsishow();coutendl;break;casec: /改變?nèi)掌赾outday;coutendl;if(daydate。getDay())cout”You connot specify a previous day”;else if(daydate。getMaxDay())cout”Invalid day”;elsedate=Date(date。getYear(),date.getMonth(),day);break;casen: /進(jìn)入下個(gè)月if(date.getMonth()=12)date=Date(date.ge
19、tYear()+1,1,1);elsedate=Date(date.getYear(),date.getMonth()+1,1);for(int k=0;kn;k+)accountsk-settle(date);break;while(cmd!=e); return 0;include ”account.h”include cmathinclude using namespace std;double Account:total=0;/Account類(lèi)的實(shí)現(xiàn)Account:Account(const Date date,const string id,const string pwd):id(
20、id),balance(0),password(pwd)date。show();cout”t#id created”endl;void Account::record(const Date &date,double amount,const string &desc)amount=floor(amount*100+0。5)/100; /保留小數(shù)點(diǎn)后兩位balance+=amount;total+=amount;date。show();cout”t#”id”tamountt”balancetdescendl;void Account:show() const coutid”tBalance:ba
21、lance;void Account:error(const string &msg)constcout”Error(id):”credit)error(not enough money);else record(date,-amount,desc);acc。change(date,getDebt()); void CreditAccount::settle(const Date &date)double interest=acc。getSum(date)rate;if(interest!=0)record(date,interest,”interest);if(date。getMonth()
22、=1)record(date,fee,”annual fee”);acc.reset(date,getDebt());void CreditAccount::show() constAccount::show();couttAvailable credit:using namespace std;/namespace使下面的定義只在當(dāng)前文件中有效namespace /存儲(chǔ)平年中的某個(gè)月1日之前有多少天,為便于getMaxDay函數(shù)的實(shí)現(xiàn),該數(shù)組多出一項(xiàng)const int DAYS_BEFORE_MONTH=0,31,59,90,120,151,181,212,243,273,304,334,3
23、65; Date::Date(int year,int month,int day):year(year),month(month),day(day)if(day=0daygetMaxDay()cout2) totalDays+; /DATE::DATEint Date::getMaxDay() constif(isLeapYear() & month=2)return 29;elsereturn DAYS_BEFORE_MONTHmonthDAYS_BEFORE_MONTHmonth-1;void Date::show() constcoutgetYear()-”getMonth()”get
24、Day();ifndef _ACCOUNT_H_#define _ACCOUNT_H_include ”date。h#include accumulator.hinclude stringusing namespace std;class Account /賬戶類(lèi)private:std::string id; /賬號(hào) std:string password;double balance; /余額static double total; /所有賬戶的總金額protected:/供派生類(lèi)調(diào)用的構(gòu)造函數(shù),id為賬戶Account(const Date date,const std::string i
25、d,const std::string pwd);/記錄一筆賬,data為日期,amount為金額,desc為說(shuō)明void record(const Date &date,double amount,const std::string desc);/報(bào)告錯(cuò)誤信息void error(const std::string &msg) const;public:const std::string &getId() const return id;const std::string getPassword() return password;double getBalance() const retu
26、rn balance;static double getTotal()return total;/存入現(xiàn)金,date為日期,amount為金額,desc為款項(xiàng)說(shuō)明virtual void deposit(const Date date,double amount,const std::string &desc)=0;/取出現(xiàn)金,date為日期,amount為金額,desc為款項(xiàng)說(shuō)明virtual void withdraw(const Date &date,double amount,const std::string desc)=0;/結(jié)算(計(jì)算利息、年費(fèi)等),每月結(jié)算一次,date為結(jié)算日
27、期virtual void settle(const Date &date)=0;/顯示賬戶信息virtual void show() const;class SavingsAccount:public Accountprivate:Accumulator acc;double rate;public:/構(gòu)造函數(shù)SavingsAccount(const Date &date,const std::string &id,double rate,const std::string &passwod);double getRate() const return rate;/存入現(xiàn)金void depo
28、sit(const Date date,double amount,const std::string desc);/取出現(xiàn)金void withdraw(const Date &date,double amount,const std:string desc);/結(jié)算利息,每年1月1日調(diào)用一次該函數(shù)void settle(const Date date);;class CreditAccount:public Account /信用賬戶類(lèi)private:Accumulator acc; /輔助計(jì)算利息的累加器double credit; /信用額度double rate; /欠款的日利率dou
29、ble fee; /信用卡年費(fèi)double getDebt()const /獲得欠款額double balance=getBalance();return(balancevalue=value;/初始化,將日期變?yōu)閐ate,數(shù)值變?yōu)関alue,累加器清零void reset(const Date &date,double value)lastDate=date;this-value=value;sum=0;endif#ifndef _DATE_H_#define _DATE_H_class Date /日期類(lèi)private:int year; /年int month; /月int day; /
30、日int totalDays; /該日期是從公元元年1月1日開(kāi)始的第幾天public:Date(int year,int month,int day); /用年、月、日構(gòu)造日期int getYear() const return year; int getMonth() const return month;int getDay() const return day; int getMaxDay() const; /獲得當(dāng)月有多少天bool isLeapYear() const /判斷當(dāng)年是否為閏年return year4=0&year%100!=0|year400=0;void show() const; /輸入當(dāng)前日期 int operator-(const
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五版知識(shí)產(chǎn)權(quán)反擔(dān)保保證合同書(shū)2篇
- 2025版土地抵押權(quán)抵押資產(chǎn)證券化合同模板3篇
- 設(shè)備監(jiān)理合同-《設(shè)備監(jiān)理合同管理》押題密卷2
- 土壤污染治理與農(nóng)業(yè)生態(tài)環(huán)境保護(hù)考核試卷
- 唇部護(hù)理產(chǎn)品的選擇與涂抹技巧考核試卷
- 2025年銷(xiāo)售部勞動(dòng)合同加班時(shí)間規(guī)定范本2篇
- 2025年家政服務(wù)服務(wù)調(diào)整協(xié)議
- 2025年度木材行業(yè)綠色認(rèn)證及產(chǎn)品檢測(cè)服務(wù)合同范本4篇
- 2025年婚禮廣告合作協(xié)議
- 二零二五年度房地產(chǎn)項(xiàng)目納稅擔(dān)保及貸款擔(dān)保合同2篇
- 2024年安全教育培訓(xùn)試題附完整答案(奪冠系列)
- 神農(nóng)架研學(xué)課程設(shè)計(jì)
- 文化資本與民族認(rèn)同建構(gòu)-洞察分析
- 2025新譯林版英語(yǔ)七年級(jí)下單詞默寫(xiě)表
- 《錫膏培訓(xùn)教材》課件
- 唯物史觀課件
- 2021-2022學(xué)年四川省成都市武侯區(qū)部編版四年級(jí)上冊(cè)期末考試語(yǔ)文試卷(解析版)
- 中國(guó)傳統(tǒng)文化服飾文化
- 大氣污染控制工程 第四版
- 淺析商務(wù)英語(yǔ)中模糊語(yǔ)言的語(yǔ)用功能
- 工程勘察資質(zhì)分級(jí)標(biāo)準(zhǔn)和工程設(shè)計(jì)資質(zhì)分級(jí)標(biāo)準(zhǔn)
評(píng)論
0/150
提交評(píng)論