C课程设计报告Word格式.docx
《C课程设计报告Word格式.docx》由会员分享,可在线阅读,更多相关《C课程设计报告Word格式.docx(24页珍藏版)》请在冰点文库上搜索。
![C课程设计报告Word格式.docx](https://file1.bingdoc.com/fileroot1/2023-5/9/8a5ee4c2-7d43-43c8-811e-631b5d257fb1/8a5ee4c2-7d43-43c8-811e-631b5d257fb11.gif)
利息结算方式为:
到期利息=定期利率*存款金额
超期利息=(存款金额+到期利息)*超期利率
3)零存整取规定
创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为30001~39999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为0.05%、0.1%和0.3%,如果到期后客户没有取款,超出存款期限部分的利率按0.025%。
如果客户没有按规定存款,取款时利率全部按0.015%计算。
到期利息=到期利率*每月固定金额*月数
超期利息=(总存款金额+到期利息)*超期利率
4)要允许用户随时查询自己的存取款信息。
查询时要求提供用户名、存款类型和账户。
5)程序要易于扩充,即需要增加存款业务类型时,要能够利用已经实现的功能,通过尽量少的代码快速实现。
(3)课程设计文档要求
1)每位同学提交一份打印的课程设计报告。
2)报告内容要求
系统功能介绍,并用viso画出系统整体框架图
主要模块划分,并用viso画出系统功能模块图
程序运行界面截图及说明。
系统主要亮点介绍。
设计中遇到的问题、难点及解决方法。
3)按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。
4)不得抄袭他人课程设计报告,每个人应体现自己的个性设计。
二、进度安排
第1周星期三8时:
00分——12时:
00分
第1周星期四8时:
第1周星期五8时:
附:
课程设计报告装订顺序:
封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。
正文的格式:
一级标题用3号黑体,二级标题用4号宋体加粗,正文用小四号宋体,行距为22.
注意:
1.此目录供参考。
(目录中的页码要写好。
)
2.课设报告的装订顺序:
此文档的前五页->
目录->
正文->
评分表。
起始页码从正文开始。
(注意:
前四页的内容中的课题题目需列出具体题目)
1、系统开发背景
全面熟悉、掌握C#编程、面向对象的基础知识,较熟练地编写基于C#的windows应用程序,了解C#的常用类库、编程技巧、异常处理。
2、系统功能模块
用户可以根据需求选择不同的银行,然后在银行里面选择不同的存款类型,一般的存储类型有:
整存整取、零存整取、存本取息、通知存款、定额定期、订货两便和活期储蓄等。
这样用户选择存储类型后,就可以开户,存款和取款等业务了。
3、主要模块划分
3.1、活期存款账户规定
创建活期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,活期存款账号的范围为10001~19999(包括10001和19999),默认为0.03%,每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。
3.2、定期存款账户规定
创建定期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,定期存款账号的范围为20001~29999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限规定为只提供1年、3年和5年三种定期。
3.3、零存整取账户规定
创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为30001~39999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为0.05%、0.1%和0.3%,如果到期后客户没有取款,超出存款期限部分的利率按0.025%。
4、程序运行界面截图及说明
4.1、开户
4.2、存款和取款
4.3、显示界面
5、源代码:
/*Customs.cs*/
classCustoms
{
privatestringaccountName;
publicCustomTypeBankCustomType{get;
protectedset;
}
publicstringAccountNumber{get;
publicfloatAccountBalence{get;
publicstringTime;
publicintflag;
publicfloatbenjin;
publicintYear;
publicstringAccountName
get
returnaccountName;
set
if(string.IsNullOrEmpty(value))
{thrownewException("
账号名不能为null或者空字符串"
);
else
for(inti=0;
i<
value.Length;
i++)
if(char.IsLetter(value[i])==false)
zhuanghuzjiyunxuzhimuhuohanzizucheng"
else{accountName=value;
publicList<
string>
PerAccountList{get;
set;
publicvoidDiposit(floatmoney)
if(money<
=0)
存款金额不能为零或负值"
else{AccountBalence+=money;
AddList("
存款"
money);
protectedvoidAddList(stringtypeInfo,floatmoney)
PerAccountList.Add(string.Format(
"
账号:
{0}.姓名:
{1},存款金额:
{2},"
+
{3:
yyyy-MM-dd[HH:
mm:
ss]}{4}{5:
f2}元,余额{6:
f2}元"
AccountNumber,
AccountName,
BankCustomType,
DateTime.Now,
typeInfo,
money,
AccountBalence
));
protectedvoidAddList(stringtypeInfo,floatmoney,stringyear)
+
f2}元;
期限:
{7}"
AccountNumber,
AccountName,
BankCustomType,
DateTime.Now,
typeInfo,
money,
AccountBalence,
Time
publicboolValidBeforeWithdraw(floatmoney)
{
MessageBox.Show("
qukuangjinebunengweilinhuofuzhi"
returnfalse;
if(money>
AccountBalence)
qukuangjinebunengfayuyue"
returntrue;
publicvirtualvoidWithdraw(floatmoney)
AccountBalence-=money;
取款"
money);
}
\*Checkingcustoms.cs*\
classCheckingCostoms:
Customs
privatestaticintnewAccountNumber=10001;
publicfloatInterestRate
{return0.0003f;
publicCheckingCostoms(stringaccountName,floataccountBalence)
if(newAccountNumber>
19999)
huoqicunkuangzhuanghu"
this.AccountName=accountName;
this.AccountBalence=accountBalence;
this.BankCustomType=CustomType.活期存款;
this.AccountNumber=newAccountNumber.ToString();
newAccountNumber++;
PerAccountList=newList<
();
kaihu"
accountBalence);
publicoverridevoidWithdraw(floatmoney)
if(ValidBeforeWithdraw(money)==false)return;
floatrate=InterestRate*AccountBalence;
AccountBalence+=rate;
jiesuanlixi"
rate);
base.Withdraw(money);
\*FixedCustoms.cs*\
classFixedCustoms:
Customs
privatestaticintnewAccountNumber=20001;
get
strings1;
ints2,s3;
s1=DateTime.Now.ToString("
yyyy"
s2=Convert.ToInt32(s1);
if(Time=="
一年"
s3=s2-Year;
if(s3<
1)
{flag=-1;
return0.0002f;
elseif(s3==1)
{flag=0;
return0.001f;
{flag=1;
elseif(Time=="
三年"
3)
elseif(s3==3)
return0.003f;
else
5)
return0.005f;
publicFixedCustoms(stringaccountName,floataccountBalence,stringyear)
29999)
dingqicunhaoyijinyongwan"
ints2;
s1=DateTime.Now.ToString("
s2=Convert.ToInt32(s1);
this.BankCustomType=CustomType.定期存款;
this.Time=year;
this.Year=s2;
开户"
accountBalence,year);
floatrate=0,rate1=0;
if(flag==0&
&
flag==-1)
rate=InterestRate*AccountBalence;
利息结算"
rate);
rate1=0.0003f*AccountBalence;
AccountBalence+=rate1;
rate1);
\*lingcunzhengqu.cs*\
classLingcunzhengqu:
privatestaticintnewAccountNumber=30001;
if(AccountBalence<
benjin*12)
flag=-1;
return0.00015f;
elseif(AccountBalence==benjin*12)
return0.0005f;
return0.0005f;
benjin*36)
elseif(AccountBalence==benjin*36)
benjin*60)
publicLingcunzhengqu(stringaccountName,floataccountBalence,stringyear)
39999)
this.BankCustomType=CustomType.零存整取;
this.benjin=accountBalence;
intyueshu;
yueshu=(int)(AccountBalence/benjin);
rate=InterestRate*benjin*yueshu;
rate=InterestRate*benjin*yueshu;
rate1=0.00025f*(AccountBalence+rate);
\*Mianform.cs*\
publicpartialclassMainForm1:
Form
privatestaticSortedDictionary<
string,Customs>
customers=newSortedDictionary<