![C#課程設(shè)計(jì)報告(共20頁)_第1頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/2/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc1.gif)
![C#課程設(shè)計(jì)報告(共20頁)_第2頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/2/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc2.gif)
![C#課程設(shè)計(jì)報告(共20頁)_第3頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/2/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc3.gif)
![C#課程設(shè)計(jì)報告(共20頁)_第4頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/2/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc4.gif)
![C#課程設(shè)計(jì)報告(共20頁)_第5頁](http://file3.renrendoc.com/fileroot_temp3/2022-1/2/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc/8ecfa2e1-d4c4-43f4-9da2-28c0bc82b1cc5.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上一、設(shè)計(jì)內(nèi)容與設(shè)計(jì)要求1.課程設(shè)計(jì)目的:全面熟悉、掌握C#編程、面向?qū)ο蟮幕A(chǔ)知識,較熟練地編寫基于C#的windows應(yīng)用程序,了解C#的常用類庫、編程技巧、異常處理。聯(lián)系已學(xué)的內(nèi)容,鞏固所學(xué)的理論,增強(qiáng)獨(dú)立工作能力。通過設(shè)計(jì)主要使學(xué)生有一個獨(dú)立編寫程序的過程,對理論學(xué)習(xí)及動手能力都有一個很大的提高。為后繼課程(ASP.net)的實(shí)驗(yàn)以及課程設(shè)計(jì)打下較扎實(shí)的基礎(chǔ)。2.課題題目(1)銀行業(yè)務(wù)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)3.設(shè)計(jì)要求:(1)課程設(shè)計(jì)環(huán)境要求操作系統(tǒng):Windows XP SP3或是Windows 7,內(nèi)存要求:至少512MB。開發(fā)環(huán)境要求:安裝了VS2008 SP
2、1的VS 2008 Professional簡體中文版。(2)設(shè)計(jì)內(nèi)容要求在銀行業(yè)務(wù)管理中,不同銀行規(guī)定有不同的賬戶類型,如整存整取、零存整取、存本取息、通知存款、定額定期、訂貨兩便和活期儲蓄等。本課程設(shè)計(jì)不處理這么復(fù)雜的內(nèi)容,而是假定只提供三種賬戶,活期存款賬戶、定期存款賬戶和零存整取賬戶。1) 活期存款賬戶規(guī)定創(chuàng)建活期賬戶時,必須提供帳戶名和開戶金額,而賬號則根據(jù)存款分類自動生成,活期存款賬號的范圍為1000119999(包括10001和19999),默認(rèn)為0.03%,每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從中取出指定的款數(shù)。向現(xiàn)有賬戶
3、追加存款時,不進(jìn)行結(jié)算。2) 定期存款賬戶規(guī)定創(chuàng)建定期賬戶時,必須提供帳戶名和開戶金額,而賬號則根據(jù)存款分類自動生成,定期存款賬號的范圍為2000129999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限規(guī)定為只提供1年、3年和5年三種定期。三種到期利率默認(rèn)分別為0.1%、0.3%和0.5%,如果到期后客戶沒有取款、超出存款期限部分的利率按0.03%計(jì)算。如果客戶提前取款,取款時利率全部按0.02%計(jì)算。每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從中取出指定的款數(shù)。向現(xiàn)有賬戶追加存款時,不進(jìn)行結(jié)算。利息結(jié)算
4、方式為:到期利息=定期利率*存款金額超期利息=(存款金額+到期利息)*超期利率3) 零存整取規(guī)定創(chuàng)建零存整取賬戶時,必須提供帳戶名和開戶金額,而賬號則根據(jù)存款分類自動生成,零存整取賬號的范圍為3000139999(包括30001和3999),零存整取要求每月都必須存固定的金額,5元起存,一次取款,存款期限規(guī)定為只提供1年、3年和5年三種,到期利率默認(rèn)為0.05%、0.1%和0.3%,如果到期后客戶沒有取款,超出存款期限部分的利率按0.025%。如果客戶沒有按規(guī)定存款,取款時利率全部按0.015%計(jì)算。每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從
5、中取出指定的款數(shù)。向現(xiàn)有賬戶追加存款時,不進(jìn)行結(jié)算。利息結(jié)算方式為:到期利息=到期利率*每月固定金額*月數(shù)超期利息=(總存款金額+到期利息)*超期利率4) 要允許用戶隨時查詢自己的存取款信息。查詢時要求提供用戶名、存款類型和賬戶。5) 程序要易于擴(kuò)充,即需要增加存款業(yè)務(wù)類型時,要能夠利用已經(jīng)實(shí)現(xiàn)的功能,通過盡量少的代碼快速實(shí)現(xiàn)。(3)課程設(shè)計(jì)文檔要求1)每位同學(xué)提交一份打印的課程設(shè)計(jì)報告。2)報告內(nèi)容要求系統(tǒng)功能介紹,并用viso畫出系統(tǒng)整體框架圖主要模塊劃分,并用viso畫出系統(tǒng)功能模塊圖程序運(yùn)行界面截圖及說明。系統(tǒng)主要亮點(diǎn)介紹。設(shè)計(jì)中遇到的問題、難點(diǎn)及解決方法。3) 按規(guī)定格式完成課程設(shè)計(jì)
6、報告,將其打印稿(A4紙)上交給老師存檔。4)不得抄襲他人課程設(shè)計(jì)報告,每個人應(yīng)體現(xiàn)自己的個性設(shè)計(jì)。二、進(jìn)度安排第 1 周 星期三 8時:00分12時:00分第 1 周 星期四 8時:00分12時:00分第 1 周 星期五 8時:00分12時:00分附:課程設(shè)計(jì)報告裝訂順序:封面、任務(wù)書、目錄、正文、評分、附件(A4大小的圖紙及程序清單)。正文的格式:一級標(biāo)題用3號黑體,二級標(biāo)題用4號宋體加粗,正文用小四號宋體,行距為22.專心-專注-專業(yè) 目錄注意:1. 此目錄供參考。(目錄中的頁碼要寫好。)2. 課設(shè)報告的裝訂順序:此文檔的前五頁->目錄->正文->評分表。起始頁碼從正文
7、開始。(注意:前四頁的內(nèi)容中的課題題目需列出具體題目)1、系統(tǒng)開發(fā)背景 全面熟悉、掌握C#編程、面向?qū)ο蟮幕A(chǔ)知識,較熟練地編寫基于C#的windows應(yīng)用程序,了解C#的常用類庫、編程技巧、異常處理。聯(lián)系已學(xué)的內(nèi)容,鞏固所學(xué)的理論,增強(qiáng)獨(dú)立工作能力。通過設(shè)計(jì)主要使學(xué)生有一個獨(dú)立編寫程序的過程,對理論學(xué)習(xí)及動手能力都有一個很大的提高。為后繼課程(ASP.net)的實(shí)驗(yàn)以及課程設(shè)計(jì)打下較扎實(shí)的基礎(chǔ)。2、系統(tǒng)功能模塊 用戶可以根據(jù)需求選擇不同的銀行,然后在銀行里面選擇不同的存款類型,一般的存儲類型有:整存整取、零存整取、存本取息、通知存款、定額定期、訂貨兩便和活期儲蓄等。本課程設(shè)計(jì)不處理這么復(fù)雜的
8、內(nèi)容,而是假定只提供三種賬戶,活期存款賬戶、定期存款賬戶和零存整取賬戶。這樣用戶選擇存儲類型后,就可以開戶,存款和取款等業(yè)務(wù)了。 開戶存儲類型選擇活期存款定期存款零存整取 存款或取款3、主要模塊劃分3.1、活期存款賬戶規(guī)定 創(chuàng)建活期賬戶時,必須提供帳戶名和開戶金額,而賬號則根據(jù)存款分類自動生成,活期存款賬號的范圍為1000119999(包括10001和19999),默認(rèn)為0.03%,每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從中取出指定的款數(shù)。向現(xiàn)有賬戶追加存款時,不進(jìn)行結(jié)算。3.2、定期存款賬戶規(guī)定 創(chuàng)建定期賬戶時,必須提供帳戶名和開戶金額,
9、而賬號則根據(jù)存款分類自動生成,定期存款賬號的范圍為2000129999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限規(guī)定為只提供1年、3年和5年三種定期。三種到期利率默認(rèn)分別為0.1%、0.3%和0.5%,如果到期后客戶沒有取款、超出存款期限部分的利率按0.03%計(jì)算。如果客戶提前取款,取款時利率全部按0.02%計(jì)算。每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從中取出指定的款數(shù)。向現(xiàn)有賬戶追加存款時,不進(jìn)行結(jié)算。利息結(jié)算方式為:到期利息=定期利率*存款金額超期利息=(存款金額+到期利息)*超期利率3.3、零
10、存整取賬戶規(guī)定 創(chuàng)建零存整取賬戶時,必須提供帳戶名和開戶金額,而賬號則根據(jù)存款分類自動生成,零存整取賬號的范圍為3000139999(包括30001和3999),零存整取要求每月都必須存固定的金額,5元起存,一次取款,存款期限規(guī)定為只提供1年、3年和5年三種,到期利率默認(rèn)為0.05%、0.1%和0.3%,如果到期后客戶沒有取款,超出存款期限部分的利率按0.025%。如果客戶沒有按規(guī)定存款,取款時利率全部按0.015%計(jì)算。每次取款時,不論存款時間多長,都要根據(jù)當(dāng)前余額結(jié)算一次利息,并將利息附加到現(xiàn)有余額中,然后再從中取出指定的款數(shù)。向現(xiàn)有賬戶追加存款時,不進(jìn)行結(jié)算。利息結(jié)算方式為:到期利息=到
11、期利率*每月固定金額*月數(shù)超期利息=(總存款金額+到期利息)*超期利率4、程序運(yùn)行界面截圖及說明4.1、開戶4.2、存款和取款4.3、顯示界面5、源代碼:/* Customs.cs */class Customs private string accountName; public CustomType BankCustomType get; protected set; public string AccountNumber get; protected set; public float AccountBalence get; protected set; public string Ti
12、me ; public int flag; public float benjin; public int Year; public string AccountName get return accountName; set if (string.IsNullOrEmpty(value) throw new Exception("賬號名不能為null或者空字符串"); else for (int i = 0; i < value.Length; i+) if (char.IsLetter(valuei) = false) throw new Exception(&q
13、uot;zhuanghuzjiyunxuzhimuhuohanzizucheng"); else accountName = value; public List<string> PerAccountList get;set ; public void Diposit(float money) if (money <= 0) throw new Exception("存款金額不能為零或負(fù)值"); else AccountBalence += money; AddList("存款", money); protected void
14、 AddList(string typeInfo, float money) PerAccountList.Add(string.Format( "賬號:0.姓名:1,存款金額:2,"+ "3:yyyy-MM-ddHH:mm:ss 45:f2元,余額6:f2元", AccountNumber , AccountName , BankCustomType , DateTime .Now , typeInfo , money , AccountBalence ); protected void AddList(string typeInfo, float m
15、oney,string year) PerAccountList.Add(string.Format( "賬號:0.姓名:1,存款金額:2," + "3:yyyy-MM-ddHH:mm:ss 45:f2元,余額6:f2元; 期限 :7", AccountNumber, AccountName, BankCustomType, DateTime.Now, typeInfo, money, AccountBalence, Time ); public bool ValidBeforeWithdraw(float money) if (money <=
16、0) MessageBox.Show("qukuangjinebunengweilinhuofuzhi"); return false; if (money > AccountBalence) MessageBox.Show("qukuangjinebunengfayuyue"); return false; return true; public virtual void Withdraw(float money) AccountBalence -= money; AddList("取款",money ); * Checkin
17、gcustoms.cs * class CheckingCostoms :Customs private static int newAccountNumber = 10001; public float InterestRate get return 0.0003f; public CheckingCostoms(string accountName, float accountBalence) if (newAccountNumber > 19999) throw new Exception("huoqicunkuangzhuanghu"); else this.
18、AccountName = accountName; this.AccountBalence = accountBalence; this.BankCustomType = CustomType.活期存款; this.AccountNumber = newAccountNumber.ToString(); newAccountNumber+; PerAccountList = new List<string>(); AddList("kaihu",accountBalence ); public override void Withdraw(float mone
19、y) if (ValidBeforeWithdraw(money) = false) return; float rate = InterestRate * AccountBalence; AccountBalence += rate; AddList("jiesuanlixi",rate ); base.Withdraw(money); * FixedCustoms.cs *class FixedCustoms:Customs private static int newAccountNumber=20001; public float InterestRate get
20、string s1; int s2,s3; s1=DateTime.Now .ToString ("yyyy"); s2=Convert .ToInt32 (s1); if(Time ="一年") s3 = s2 - Year; if (s3 < 1) flag = -1; return 0.0002f; else if (s3 = 1) flag = 0; return 0.001f; else flag = 1; return 0.001f; else if (Time = "三年") s3 = s2 - Year; if
21、(s3 < 3) flag = -1; return 0.0002f; else if (s3 = 3) flag = 0; return 0.003f; else flag = 1; return 0.003f; else s3 = s2 - Year; if (s3 < 5) flag = -1; return 0.0002f; else if (s3 = 1) flag = 0; return 0.005f; else flag = 1; return 0.005f; public FixedCustoms (string accountName,float accountB
22、alence,string year) if (newAccountNumber > 29999) throw new Exception("dingqicunhaoyijinyongwan"); else string s1; int s2; s1 = DateTime.Now.ToString("yyyy"); s2 = Convert.ToInt32(s1); this.AccountName = accountName; this.AccountBalence = accountBalence; this.BankCustomType =
23、CustomType.定期存款; this.Time = year; this.Year = s2; this.AccountNumber = newAccountNumber.ToString(); newAccountNumber+; PerAccountList = new List<string>(); AddList("開戶",accountBalence,year ); public override void Withdraw(float money) if (ValidBeforeWithdraw(money) = false) return;
24、float rate=0,rate1=0; if (flag = 0 && flag = -1) rate = InterestRate * AccountBalence; AccountBalence += rate; AddList("利息結(jié)算", rate); base.Withdraw(money); else rate = InterestRate * AccountBalence; AccountBalence += rate; rate1 = 0.0003f * AccountBalence; AccountBalence += rate1;
25、AddList("利息結(jié)算", rate1); base.Withdraw(money); * lingcunzhengqu.cs *class Lingcunzhengqu:Customs private static int newAccountNumber=30001; public float InterestRate get string s1; int s2; s1=DateTime.Now .ToString ("yyyy"); s2=Convert .ToInt32 (s1); if(Time ="一年") if (A
26、ccountBalence < benjin * 12) flag = -1; return 0.00015f; else if (AccountBalence = benjin * 12) flag = 0; return 0.0005f; else flag = 1;return 0.0005f; else if (Time = "三年") if (AccountBalence < benjin * 36) flag = -1; return 0.00015f; else if (AccountBalence = benjin * 36) flag = 0;
27、 return 0.001f; else flag = 1; return 0.001f; else if (AccountBalence < benjin * 60) flag = -1; return 0.00015f; else if (AccountBalence = benjin * 12) flag = 0; return 0.003f; else flag = 1; return 0.003f; public Lingcunzhengqu (string accountName,float accountBalence,string year) if (newAccount
28、Number > 39999) throw new Exception("dingqicunhaoyijinyongwan"); else string s1; int s2; s1 = DateTime.Now.ToString("yyyy"); s2 = Convert.ToInt32(s1); this.AccountName = accountName; this.AccountBalence = accountBalence; this.BankCustomType = CustomType.零存整取; this.Time = year;
29、 this.Year = s2; this.benjin = accountBalence; this.AccountNumber = newAccountNumber.ToString(); newAccountNumber+; PerAccountList = new List<string>(); AddList("開戶",accountBalence,year ); public override void Withdraw(float money) if (ValidBeforeWithdraw(money) = false) return; floa
30、t rate=0,rate1=0; int yueshu; yueshu = (int )(AccountBalence / benjin); if (flag = 0 && flag = -1) rate = InterestRate * benjin *yueshu ; AccountBalence += rate; AddList("利息結(jié)算", rate); base.Withdraw(money); else rate = InterestRate *benjin *yueshu ; rate1 = 0.00025f * (AccountBalen
31、ce+rate ); AccountBalence += rate1; AddList("利息結(jié)算", rate1); base.Withdraw(money); * Mianform.cs *public partial class MainForm1 : Form private static SortedDictionary<string, Customs> customers = new SortedDictionary<string, Customs>(); public MainForm1() InitializeComponent();
32、 string accountTypeString = Enum.GetNames(typeof(CustomType); comboBox1.Items.AddRange(accountTypeString); comboBox1.SelectedIndex = 0; this.StartPosition = FormStartPosition.CenterScreen; private void MainForm1_Load(object sender, EventArgs e) private void button1_Click(object sender, EventArgs e)
33、float money; if (float.TryParse(textBox2.Text, out money) = false) MessageBox.Show("開戶金額不正確","無法開戶",MessageBoxButtons.OK ,MessageBoxIcon.Question ); return; CreateCustom(comboBox1.Text, textBox1.Text, money,comboBox2.Text); private void CreateCustom(string customTypeString, strin
34、g userName, float initMoney,string year) Customs newCustom = null; if (customTypeString = "活期存款") try newCustom = new CheckingCostoms(userName, initMoney); catch (Exception ex) MessageBox.Show(ex.ToString(); else if (customTypeString = "定期存款") if (Int32.Parse(textBox2.Text) <
35、100) MessageBox.Show("開戶金額不足", "無法開戶", MessageBoxButtons.OK, MessageBoxIcon.Question); else try newCustom = new FixedCustoms(userName, initMoney, year); catch (Exception ex) MessageBox.Show(ex.ToString(); return; else if (Int32.Parse(textBox2.Text) < 5) MessageBox.Show("開
36、戶金額不足", "無法開戶", MessageBoxButtons.OK, MessageBoxIcon.Question); else try newCustom = new Lingcunzhengqu (userName, initMoney, year); catch (Exception ex) MessageBox.Show(ex.ToString(); return; if (newCustom != null) customers.Add(newCustom.AccountNumber, newCustom); UpdateAccountInfo(
37、newCustom.AccountNumber); private void UpdateAccountInfo(string account) listBox1.Items.Clear(); Customs custom = customersaccount; foreach (var info in custom.PerAccountList) listBox1.Items.Add(info ); private void button2_Click(object sender, EventArgs e) float money; if (!ParseMoney(textBox4.Text, "存款", out money) return;
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 食品質(zhì)量與安全控制工程作業(yè)指導(dǎo)書
- 食品質(zhì)量與安全檢測技術(shù)作業(yè)指導(dǎo)書
- 醫(yī)院醫(yī)療器械質(zhì)量保證協(xié)議書
- 2025年沈陽貨運(yùn)從業(yè)資格證模擬試題答案
- 2025年吐魯番貨運(yùn)資格證考試答案
- 小學(xué)二年級下冊口算驗(yàn)收練習(xí)題
- 2025年鎮(zhèn)江年貨運(yùn)從業(yè)資格證考試題大全
- 部編版歷史七年級下冊《12課 宋元時期的都市和文化》聽課評課記錄
- 2024-2025學(xué)年九年級科學(xué)上冊第3章能量的轉(zhuǎn)化與守恒第6節(jié)電能作業(yè)設(shè)計(jì)新版浙教版
- 湘教版數(shù)學(xué)八年級下冊《1.4 角平分線的性質(zhì)》聽評課記錄
- 淋巴瘤的免疫靶向治療
- 校園駐校教官培訓(xùn)
- 炎癥性腸病的自我管理
- 自然辯證法論述題146題帶答案(可打印版)
- 儲運(yùn)部部長年終總結(jié)
- 物業(yè)管理裝修管理規(guī)定(5篇)
- (新版)工業(yè)機(jī)器人系統(tǒng)操作員(三級)職業(yè)鑒定理論考試題庫(含答案)
- 中國銀行(香港)有限公司招聘筆試真題2023
- 教育環(huán)境分析報告
- 人力資源服務(wù)公司章程
- (正式版)CB∕T 4552-2024 船舶行業(yè)企業(yè)安全生產(chǎn)文件編制和管理規(guī)定
評論
0/150
提交評論