收藏 分销(赏)

C课程设计报告.doc

上传人:丰**** 文档编号:2940273 上传时间:2024-06-11 格式:DOC 页数:20 大小:163.02KB
下载 相关 举报
C课程设计报告.doc_第1页
第1页 / 共20页
C课程设计报告.doc_第2页
第2页 / 共20页
C课程设计报告.doc_第3页
第3页 / 共20页
C课程设计报告.doc_第4页
第4页 / 共20页
C课程设计报告.doc_第5页
第5页 / 共20页
点击查看更多>>
资源描述

1、一、设计内容与设计要求1.课程设计目的:全面熟悉、掌握C#编程、面向对象的基础知识,较熟练地编写基于C#的windows应用程序,了解C#的常用类库、编程技巧、异常处理。联系已学的内容,巩固所学的理论,增强独立工作能力。通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。为后继课程(ASP.net)的实验以及课程设计打下较扎实的基础。2.课题题目(1)银行业务管理系统设计与实现3.设计要求:(1)课程设计环境要求操作系统:Windows XP SP3或是Windows 7,内存要求:至少512MB。开发环境要求:安装了VS2008 SP1的VS 2008 Pro

2、fessional简体中文版。(2)设计内容要求在银行业务管理中,不同银行规定有不同的账户类型,如整存整取、零存整取、存本取息、通知存款、定额定期、订货两便和活期储蓄等。本课程设计不处理这么复杂的内容,而是假定只提供三种账户,活期存款账户、定期存款账户和零存整取账户。1) 活期存款账户规定创建活期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,活期存款账号的范围为1000119999(包括10001和19999),默认为0.03%,每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账户追加存款时,不进行结算。2

3、) 定期存款账户规定创建定期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,定期存款账号的范围为2000129999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限规定为只提供1年、3年和5年三种定期。三种到期利率默认分别为0.1%、0.3%和0.5%,如果到期后客户没有取款、超出存款期限部分的利率按0.03%计算。如果客户提前取款,取款时利率全部按0.02%计算。每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账户追加存款时,不进行结算。利息结算方式为:到期利息=定期利率

4、*存款金额超期利息=(存款金额+到期利息)*超期利率3) 零存整取规定创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为3000139999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为0.05%、0.1%和0.3%,如果到期后客户没有取款,超出存款期限部分的利率按0.025%。如果客户没有按规定存款,取款时利率全部按0.015%计算。每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账

5、户追加存款时,不进行结算。利息结算方式为:到期利息=到期利率*每月固定金额*月数超期利息=(总存款金额+到期利息)*超期利率4) 要允许用户随时查询自己的存取款信息。查询时要求提供用户名、存款类型和账户。5) 程序要易于扩充,即需要增加存款业务类型时,要能够利用已经实现的功能,通过尽量少的代码快速实现。(3)课程设计文档要求1)每位同学提交一份打印的课程设计报告。2)报告内容要求系统功能介绍,并用viso画出系统整体框架图主要模块划分,并用viso画出系统功能模块图程序运行界面截图及说明。系统主要亮点介绍。设计中遇到的问题、难点及解决方法。3) 按规定格式完成课程设计报告,将其打印稿(A4纸)

6、上交给老师存档。4)不得抄袭他人课程设计报告,每个人应体现自己的个性设计。二、进度安排第 1 周 星期三 8时:00分12时:00分第 1 周 星期四 8时:00分12时:00分第 1 周 星期五 8时:00分12时:00分附:课程设计报告装订顺序:封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。正文的格式:一级标题用3号黑体,二级标题用4号宋体加粗,正文用小四号宋体,行距为22.2 目录1、系统开发背景12、系统功能模块13、主要模块划分23.1、活期存款账户规定23.2、定期存款账户规定23.3、零存整取账户规定34、程序运行界面截图及说明34.1、开户34.2、存款和取

7、款44.3、显示界面45、源代码:46、调试过程中的问题、难点及解决方法157、 评分表16注意:1. 此目录供参考。(目录中的页码要写好。)2. 课设报告的装订顺序:此文档的前五页-目录-正文-评分表。起始页码从正文开始。(注意:前四页的内容中的课题题目需列出具体题目)1、系统开发背景 全面熟悉、掌握C#编程、面向对象的基础知识,较熟练地编写基于C#的windows应用程序,了解C#的常用类库、编程技巧、异常处理。联系已学的内容,巩固所学的理论,增强独立工作能力。通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。为后继课程(ASP.net)的实验以及课程设计

8、打下较扎实的基础。2、系统功能模块 用户可以根据需求选择不同的银行,然后在银行里面选择不同的存款类型,一般的存储类型有:整存整取、零存整取、存本取息、通知存款、定额定期、订货两便和活期储蓄等。本课程设计不处理这么复杂的内容,而是假定只提供三种账户,活期存款账户、定期存款账户和零存整取账户。这样用户选择存储类型后,就可以开户,存款和取款等业务了。 开户存储类型选择活期存款定期存款零存整取 存款或取款3、主要模块划分3.1、活期存款账户规定 创建活期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,活期存款账号的范围为1000119999(包括10001和19999),默认为0.03

9、%,每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账户追加存款时,不进行结算。3.2、定期存款账户规定 创建定期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,定期存款账号的范围为2000129999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限规定为只提供1年、3年和5年三种定期。三种到期利率默认分别为0.1%、0.3%和0.5%,如果到期后客户没有取款、超出存款期限部分的利率按0.03%计算。如果客户提前取款,取款时利率全部按0.02%计算。每次取款时,不论存款时间

10、多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账户追加存款时,不进行结算。利息结算方式为:到期利息=定期利率*存款金额超期利息=(存款金额+到期利息)*超期利率3.3、零存整取账户规定 创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为3000139999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为0.05%、0.1%和0.3%,如果到期后客户没有取款,超出存款期限部分的利率按0.025%。如果客户没有按

11、规定存款,取款时利率全部按0.015%计算。每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。向现有账户追加存款时,不进行结算。利息结算方式为:到期利息=到期利率*每月固定金额*月数超期利息=(总存款金额+到期利息)*超期利率4、程序运行界面截图及说明4.1、开户4.2、存款和取款4.3、显示界面5、源代码:/* Customs.cs */class Customs private string accountName; public CustomType BankCustomType get; protected set; pub

12、lic string AccountNumber get; protected set; public float AccountBalence get; protected set; public string Time ; 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 f

13、or (int i = 0; i value.Length; i+) if (char.IsLetter(valuei) = false) throw new Exception(zhuanghuzjiyunxuzhimuhuohanzizucheng); else accountName = value; public List PerAccountList get;set ; public void Diposit(float money) if (money = 0) throw new Exception(存款金额不能为零或负值); else AccountBalence += mon

14、ey; AddList(存款, money); protected void 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 typ

15、eInfo, float money,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 AccountBalence)

16、MessageBox.Show(qukuangjinebunengfayuyue); return false; return true; public virtual void Withdraw(float money) AccountBalence -= money; AddList(取款,money ); * Checkingcustoms.cs * class CheckingCostoms :Customs private static int newAccountNumber = 10001; public float InterestRate get return 0.0003f

17、; public CheckingCostoms(string accountName, float accountBalence) if (newAccountNumber 19999) throw new Exception(huoqicunkuangzhuanghu); else this.AccountName = accountName; this.AccountBalence = accountBalence; this.BankCustomType = CustomType.活期存款; this.AccountNumber = newAccountNumber.ToString(

18、); newAccountNumber+; PerAccountList = new List(); AddList(kaihu,accountBalence ); public override void Withdraw(float money) if (ValidBeforeWithdraw(money) = false) return; float rate = InterestRate * AccountBalence; AccountBalence += rate; AddList(jiesuanlixi,rate ); base.Withdraw(money); * FixedC

19、ustoms.cs *class FixedCustoms:Customs private static int newAccountNumber=20001; public float InterestRate get 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;

20、 else flag = 1; return 0.001f; else if (Time = 三年) s3 = s2 - Year; if (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 29999) throw new Exception(dingqicunhaoyijinyongwan); else string s1; int s2; s1 = DateTime.Now.

21、ToString(yyyy); s2 = Convert.ToInt32(s1); this.AccountName = accountName; this.AccountBalence = accountBalence; this.BankCustomType = CustomType.定期存款; this.Time = year; this.Year = s2; this.AccountNumber = newAccountNumber.ToString(); newAccountNumber+; PerAccountList = new List(); AddList(开户,accoun

22、tBalence,year ); public override void Withdraw(float money) if (ValidBeforeWithdraw(money) = false) return; float rate=0,rate1=0; if (flag = 0 & flag = -1) rate = InterestRate * AccountBalence; AccountBalence += rate; AddList(利息结算, rate); base.Withdraw(money); else rate = InterestRate * AccountBalen

23、ce; AccountBalence += rate; rate1 = 0.0003f * AccountBalence; AccountBalence += rate1; AddList(利息结算, 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 (

24、yyyy); s2=Convert .ToInt32 (s1); if(Time =一年) if (AccountBalence 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 (AccountBal

25、ence = benjin * 36) flag = 0; return 0.001f; else flag = 1; return 0.001f; else if (AccountBalence 39999) throw new Exception(dingqicunhaoyijinyongwan); else string s1; int s2; s1 = DateTime.Now.ToString(yyyy); s2 = Convert.ToInt32(s1); this.AccountName = accountName; this.AccountBalence = accountBa

26、lence; this.BankCustomType = CustomType.零存整取; this.Time = year; this.Year = s2; this.benjin = accountBalence; this.AccountNumber = newAccountNumber.ToString(); newAccountNumber+; PerAccountList = new List(); AddList(开户,accountBalence,year ); public override void Withdraw(float money) if (ValidBefore

27、Withdraw(money) = false) return; float rate=0,rate1=0; int yueshu; yueshu = (int )(AccountBalence / benjin); if (flag = 0 & flag = -1) rate = InterestRate * benjin *yueshu ; AccountBalence += rate; AddList(利息结算, rate); base.Withdraw(money); else rate = InterestRate *benjin *yueshu ; rate1 = 0.00025f * (AccountBalence+rate ); AccountBalence += rate1; AddList(利息结算, rate1); base.Withdraw(money); * Mianform.cs *public partial class MainForm1 : Form private static SortedDictionary customers = new SortedDictionary(); public MainFo

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服