C#课程设计报告.docx

上传人:b****5 文档编号:27657139 上传时间:2023-07-03 格式:DOCX 页数:24 大小:63.44KB
下载 相关 举报
C#课程设计报告.docx_第1页
第1页 / 共24页
C#课程设计报告.docx_第2页
第2页 / 共24页
C#课程设计报告.docx_第3页
第3页 / 共24页
C#课程设计报告.docx_第4页
第4页 / 共24页
C#课程设计报告.docx_第5页
第5页 / 共24页
点击查看更多>>
下载资源
资源描述

C#课程设计报告.docx

《C#课程设计报告.docx》由会员分享,可在线阅读,更多相关《C#课程设计报告.docx(24页珍藏版)》请在冰豆网上搜索。

C#课程设计报告.docx

C#课程设计报告

一、设计内容与设计要求

1.课程设计目的:

全面熟悉、掌握C#编程、面向对象的基础知识,较熟练地编写基于C#的windows应用程序,了解C#的常用类库、编程技巧、异常处理。

联系已学的内容,巩固所学的理论,增强独立工作能力。

通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。

为后继课程()的实验以及课程设计打下较扎实的基础。

2.课题题目

(1)银行业务管理系统设计与实现

3.设计要求:

(1)课程设计环境要求

操作系统:

WindowsXPSP3或是Windows7,

内存要求:

至少512MB。

开发环境要求:

安装了VS2008SP1的VS2008Professional简体中文版。

(2)设计内容要求

在银行业务管理中,不同银行规定有不同的账户类型,如整存整取、零存整取、存本取息、通知存款、定额定期、订货两便和活期储蓄等。

本课程设计不处理这么复杂的内容,而是假定只提供三种账户,活期存款账户、定期存款账户和零存整取账户。

1)活期存款账户规定

创建活期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,活期存款账号的范围为10001~19999(包括10001和19999),默认为%,每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

2)定期存款账户规定

创建定期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,定期存款账号的范围为20001~29999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限规定为只提供1年、3年和5年三种定期。

三种到期利率默认分别为%、%和%,如果到期后客户没有取款、超出存款期限部分的利率按%计算。

如果客户提前取款,取款时利率全部按%计算。

每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

利息结算方式为:

到期利息=定期利率*存款金额

超期利息=(存款金额+到期利息)*超期利率

3)零存整取规定

创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为30001~39999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为%、%和%,如果到期后客户没有取款,超出存款期限部分的利率按%。

如果客户没有按规定存款,取款时利率全部按%计算。

每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

利息结算方式为:

到期利息=到期利率*每月固定金额*月数

超期利息=(总存款金额+到期利息)*超期利率

4)要允许用户随时查询自己的存取款信息。

查询时要求提供用户名、存款类型和账户。

5)程序要易于扩充,即需要增加存款业务类型时,要能够利用已经实现的功能,通过尽量少的代码快速实现。

(3)课程设计文档要求

1)每位同学提交一份打印的课程设计报告。

2)报告内容要求

系统功能介绍,并用viso画出系统整体框架图

主要模块划分,并用viso画出系统功能模块图

程序运行界面截图及说明。

系统主要亮点介绍。

设计中遇到的问题、难点及解决方法。

3)按规定格式完成课程设计报告,将其打印稿(A4纸)上交给老师存档。

4)不得抄袭他人课程设计报告,每个人应体现自己的个性设计。

二、进度安排

第1周星期三8时:

00分——12时:

00分

第1周星期四8时:

00分——12时:

00分

第1周星期五8时:

00分——12时:

00分

附:

课程设计报告装订顺序:

封面、任务书、目录、正文、评分、附件(A4大小的图纸及程序清单)。

正文的格式:

一级标题用3号黑体,二级标题用4号宋体加粗,正文用小四号宋体,行距为22.

 

1、系统开发背景1

2、系统功能模块1

3、主要模块划分2

、活期存款账户规定2

、定期存款账户规定2

、零存整取账户规定3

4、程序运行界面截图及说明3

、开户3

、存款和取款4

、显示界面4

5、源代码:

4

6、调试过程中的问题、难点及解决方法15

7、评分表16

注意:

1.此目录供参考。

(目录中的页码要写好。

2.课设报告的装订顺序:

此文档的前五页->目录->正文->评分表。

起始页码从正文开始。

(注意:

前四页的内容中的课题题目需列出具体题目)

 

1、系统开发背景

全面熟悉、掌握C#编程、面向对象的基础知识,较熟练地编写基于C#的windows应用程序,了解C#的常用类库、编程技巧、异常处理。

联系已学的内容,巩固所学的理论,增强独立工作能力。

通过设计主要使学生有一个独立编写程序的过程,对理论学习及动手能力都有一个很大的提高。

为后继课程()的实验以及课程设计打下较扎实的基础。

 

2、系统功能模块

用户可以根据需求选择不同的银行,然后在银行里面选择不同的存款类型,一般的存储类型有:

整存整取、零存整取、存本取息、通知存款、定额定期、订货两便和活期储蓄等。

本课程设计不处理这么复杂的内容,而是假定只提供三种账户,活期存款账户、定期存款账户和零存整取账户。

这样用户选择存储类型后,就可以开户,存款和取款等业务了。

 

 

 

 

3、主要模块划分

、活期存款账户规定

创建活期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,活期存款账号的范围为10001~19999(包括10001和19999),默认为%,每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

 

、定期存款账户规定

创建定期账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,定期存款账号的范围为20001~29999(包括20001和2999),定期存款要求一次性存款、一次性取款,100元起存,期限规定为只提供1年、3年和5年三种定期。

三种到期利率默认分别为%、%和%,如果到期后客户没有取款、超出存款期限部分的利率按%计算。

如果客户提前取款,取款时利率全部按%计算。

每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

利息结算方式为:

到期利息=定期利率*存款金额

超期利息=(存款金额+到期利息)*超期利率

 

、零存整取账户规定

创建零存整取账户时,必须提供帐户名和开户金额,而账号则根据存款分类自动生成,零存整取账号的范围为30001~39999(包括30001和3999),零存整取要求每月都必须存固定的金额,5元起存,一次取款,存款期限规定为只提供1年、3年和5年三种,到期利率默认为%、%和%,如果到期后客户没有取款,超出存款期限部分的利率按%。

如果客户没有按规定存款,取款时利率全部按%计算。

每次取款时,不论存款时间多长,都要根据当前余额结算一次利息,并将利息附加到现有余额中,然后再从中取出指定的款数。

向现有账户追加存款时,不进行结算。

利息结算方式为:

到期利息=到期利率*每月固定金额*月数

超期利息=(总存款金额+到期利息)*超期利率

 

4、程序运行界面截图及说明

、开户

、存款和取款

、显示界面

 

5、源代码:

/**/

classCustoms

{

privatestringaccountName;

publicCustomTypeBankCustomType{get;protectedset;}

publicstringAccountNumber{get;protectedset;}

publicfloatAccountBalence{get;protectedset;}

publicstringTime;

publicintflag;

publicfloatbenjin;

publicintYear;

publicstringAccountName

{

get

{

returnaccountName;

}

set

{

if(value))

{thrownewException("账号名不能为null或者空字符串");}

else

{

for(inti=0;i<;i++)

{

if(value[i])==false)

{thrownewException("zhuanghuzjiyunxuzhimuhuohanzizucheng");}

else{accountName=value;}

}

}

}

}

publicListPerAccountList{get;set;}

publicvoidDiposit(floatmoney)

{

if(money<=0)

{thrownewException("存款金额不能为零或负值");}

else{AccountBalence+=money;AddList("存款",money);}

}

protectedvoidAddList(stringtypeInfo,floatmoney)

{

"账号:

{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)

{

"账号:

{0}.姓名:

{1},存款金额:

{2},"+

"{3:

yyyy-MM-dd[HH:

mm:

ss]}{4}{5:

f2}元,余额{6:

f2}元;期限:

{7}",

AccountNumber,

AccountName,

BankCustomType,

typeInfo,

money,

AccountBalence,

Time

));

}

publicboolValidBeforeWithdraw(floatmoney)

{

if(money<=0)

{

("qukuangjinebunengweilinhuofuzhi");

returnfalse;

}

if(money>AccountBalence)

{

("qukuangjinebunengfayuyue");

returnfalse;

}

returntrue;

}

publicvirtualvoidWithdraw(floatmoney)

{

AccountBalence-=money;

AddList("取款",money);

}

}

 

\**\

classCheckingCostoms:

Customs

{

privatestaticintnewAccountNumber=10001;

publicfloatInterestRate

{

get

{return;}

}

publicCheckingCostoms(stringaccountName,floataccountBalence)

{

if(newAccountNumber>19999)

{thrownewException("huoqicunkuangzhuanghu");}

else

{

=accountName;

=accountBalence;

=CustomType.活期存款;

=();

newAccountNumber++;

PerAccountList=newList();

AddList("kaihu",accountBalence);

}

}

publicoverridevoidWithdraw(floatmoney)

{

if(ValidBeforeWithdraw(money)==false)return;

floatrate=InterestRate*AccountBalence;

AccountBalence+=rate;

AddList("jiesuanlixi",rate);

(money);

}

}

 

\**\

classFixedCustoms:

Customs

{

privatestaticintnewAccountNumber=20001;

publicfloatInterestRate

{

get

{

strings1;ints2,s3;

s1=.ToString("yyyy");

s2=Convert.ToInt32(s1);

if(Time=="一年")

{

s3=s2-Year;

if(s3<1)

{flag=-1;return;}

elseif(s3==1)

{flag=0;return;}

else

{flag=1;return;}

}

elseif(Time=="三年")

{

s3=s2-Year;

if(s3<3)

{flag=-1;return;}

elseif(s3==3)

{flag=0;return;}

else

{flag=1;return;}

}

else

{

s3=s2-Year;

if(s3<5)

{flag=-1;return;}

elseif(s3==1)

{flag=0;return;}

else

{flag=1;return;}

}

}

}

publicFixedCustoms(stringaccountName,floataccountBalence,stringyear)

{

if(newAccountNumber>29999)

{thrownewException("dingqicunhaoyijinyongwan");}

else

{

strings1;ints2;

s1="yyyy");

s2=(s1);

=accountName;

=accountBalence;

=CustomType.定期存款;

=year;

=s2;

=();

newAccountNumber++;

PerAccountList=newList();

AddList("开户",accountBalence,year);

}

}

publicoverridevoidWithdraw(floatmoney)

{

if(ValidBeforeWithdraw(money)==false)return;

floatrate=0,rate1=0;

if(flag==0&&flag==-1)

{

rate=InterestRate*AccountBalence;

AccountBalence+=rate;

AddList("利息结算",rate);

(money);

}

else

{

rate=InterestRate*AccountBalence;

AccountBalence+=rate;

rate1=*AccountBalence;

AccountBalence+=rate1;

AddList("利息结算",rate1);

(money);

}

}

}

 

\**\

classLingcunzhengqu:

Customs

{

privatestaticintnewAccountNumber=30001;

publicfloatInterestRate

{

get

{

strings1;ints2;

s1=.ToString("yyyy");

s2=Convert.ToInt32(s1);

if(Time=="一年")

{

if(AccountBalence

{

flag=-1;return;

}

elseif(AccountBalence==benjin*12)

{flag=0;return;}

else

{flag=1;return;}

}

elseif(Time=="三年")

{

if(AccountBalence

{

flag=-1;return;

}

elseif(AccountBalence==benjin*36)

{flag=0;return;}

else

{flag=1;return;}

}

else

{

if(AccountBalence

{

flag=-1;return;

}

elseif(AccountBalence==benjin*12)

{flag=0;return;}

else

{flag=1;return;}

}

}

}

publicLingcunzhengqu(stringaccountName,floataccountBalence,stringyear)

{

if(newAccountNumber>39999)

{thrownewException("dingqicunhaoyijinyongwan");}

else

{

strings1;ints2;

s1="yyyy");

s2=(s1);

=accountName;

=accountBalence;

=CustomType.零存整取;

=year;

=s2;

=accountBalence;

=();

newAccountNumber++;

PerAccountList=newList();

AddList("开户",accountBalence,year);

}

}

publicoverridevoidWithdraw(floatmoney)

{

if(ValidBeforeWithdraw(money)==false)return;

floatrate=0,rate1=0;

intyueshu;

yueshu=(int)(AccountBalence/benjin);

if(flag==0&&flag==-1)

{

rate=InterestRate*benjin*yueshu;

AccountBalence+=rate;

AddList("利息结算",rate);

(money);

}

else

{

rate=InterestRate*benjin*yueshu;

rate1=*(AccountBalence+rate);

AccountBalence+=rate1;

AddList("利息结算",rate1);

(money);

}

}

}

 

\**\

 

publicpartialclassMainForm1:

Form

{

privatestaticSortedDictionarycustomers=newSortedDictionary();

publicMainForm1()

{

InitializeComponent();

string[]accountTypeString=(typeof(CustomType));

=0;

=;

}

privatevoidMainForm1_Load(objectsender,EventArgse)

{

}

privatevoidbutton1_Click(objectsender,EventArgse)

{

floatmoney;

if,outmoney)==false)

{

("开户金额不正确","无法开户",,);

return;

}

CreateCustom,,money,;

}

privatevoidCreateCustom(stringcustomTypeString,stringuserName,floatinitMoney,stringyear)

{

CustomsnewCustom=null;

if(customTypeString=="活期存款")

{

try{newCustom=newCheckingCostoms(userName,initMoney);}

catch(Exceptionex){());}

}

elseif(customTypeString=="定期存款")

{

if<100)

{("开户金额不足","无法开户",,;}

else

{

try{newCustom=newFixedCustoms(userName,initMoney,year);}

catch(Exceptionex){());r

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 初中教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1