市场营销银行业务

上传人:hg****hS 文档编号:154941838 上传时间:2022-09-22 格式:DOCX 页数:38 大小:169.21KB
收藏 版权申诉 举报 下载
市场营销银行业务_第1页
第1页 / 共38页
市场营销银行业务_第2页
第2页 / 共38页
市场营销银行业务_第3页
第3页 / 共38页
资源描述:

《市场营销银行业务》由会员分享,可在线阅读,更多相关《市场营销银行业务(38页珍藏版)》请在装配图网上搜索。

1、山东理工工大学计计算机学学院课程设计计(数据结结构)班 级姓名学 号指导教师师二一一一年一月二十日课程设计计任务书书及成绩绩评定课题名称称银行业务务模拟系系统、题目目的目的的和要求求: 1、设计计目的巩固和加加深对数数据结构构的理解解,通过过上机实实验、调调试程序序,加深深对课本本知识的的理解,最最终使学学生能够够熟练应应用数据据结构的的知识写写程序。(1)通通过本课课程的学学习,能能熟练掌掌握几种种基本数数据结构构的基本本操作。(2)能能针对给给定题目目,选择择相应的的数据结结构,分分析并设设计算法法,进而而给出问问题的正正确求解解过程并并编写代代码实现现。2、设计计题目要要求:1.客客户业

2、务务分为两两种:第一种种是申请请从银行行得到一一笔资金金,即取款款或借款;第二种种是向银银行投入入一笔资资金,即存款款或还款款。2.银银行有两两个服务务窗口,相应地地有两个个队列。客户到到达银行行后先排第第一个队队。处理每每个客户户业务时时,如果属属于第一一种,且申请请额超出出银行现现存资金金总额而而得不到到满足时时,则立即排入入第二个个队等候候,直至满满足时才才离开银银行, 否则则业务处处理完后后立即离开开银行。3.每每接待完完一个第第二种业务务的客户户,则顺序序检查和和处理第第二个队队列中的的客户,对能满满足的申申请者予予以满足足,不能满满足者重重新排到到第二个个队列的的队尾。4.假设设检

3、查不不需要时时间,在在此检查查过程中中,一旦旦银行资资金总额额少于或或等于刚刚才第一一个队列列中最后后一个客客户(第第二种业业务)被被接待之之前的数数额,或者本本次已将将第二个个队列检检查或处处理了一一遍,就停止止检查(因因为此时时已不可可能还有有满足者者),转转而继续续接待第第一个队队列的客客户。5.任任何时刻刻都只开开一个窗窗口,营营业时间间结束时时所有客客户立即即离开银银行。通通过离散散的模拟拟方法求求出客户户在银行行内逗留留的平均均时间。、设计计进度及及完成情情况日 期期内 容1.100-1.11选取参考考书,查查阅有关关文献资资料,完完成资料料搜集和和系统分分析工作作。1.1221.

4、14创建相关关数据结结构,录录入源程程序。1.1771.19调试程序序并记录录调试中中的问题题,初步步完成课课程设计计报告。1.2001.21上交课程程设计报报告打印印版并进进行课程程设计答答辩,要要求每个个同学针针对自己己的设计计回答指指导教师师3-44个问题题。考核结束束后将课课程设计计报告和和源程序序的电子子版交班班长统一一刻光盘盘上交。、主要要参考文文献及资资料1 严蔚敏敏 数据据结构(CC语言版版)清华华大学出出版社 199992 严蔚敏敏 数据据结构题题集(CC语言版版)清华华大学出出版社 199993 谭浩强强 CC语言程程序设计计 清清华大学学出版社社4 与所用用编程环环境相配

5、配套的CC语言或或C+相关的的资料、成绩绩评定:设计成绩绩:(教教师填写写)指导老师师:(签签字)二一一一年一月二十一日目 录录第一章概概述1第二章系系统分析析2第三章概概要设计计3第四章详详细设计计6第五章运运行与测测试244第六章总总结与心心得288参考文献献:29第一章 概述课程设计计是实践践性教学学中的一一个重要要环节,它它以某一一课程为为基础,可可以涉及及和课程程相关的的各个方方面,是是一门独独立于课课程之外外的特殊殊课程。课课程设计计是让同同学们对对所学的的课程更更全面的的学习和和应用,理理解和掌掌握课程程的相关关知识。数数据结构构是一一门重要要的专业业基础课课,是计计算机理理论和

6、应应用的核核心基础础课程。数据结构构课程设设计,要要求学生生在数据据结构的的逻辑特特性和物物理表示示、数据据结构的的选择和和应用、算算法的设设计及其其实现等等方面,加加深对课课程基本本内容的的理解。同同时,在在程序设设计方法法以及上上机操作作等基本本技能和和科学作作风方面面受到比比较系统统和严格格的训练练。在这次的的课程设设计中我我选择的的题目是是银行业业务模拟拟系统。一般某个银行在某个地区营业前,都要进行市场调查与分析。通过调查,分析开多少个窗口使效率最高,而且不会产生较大的冗余。做此项调查通常要花费大量的人力物力,因此我借助计算机系统产生的随机数(时间间隔,每个客户办理的款数以及处理时间)

7、对银行客户的离散事件进行预测,通过银行业务模拟系统计算出客户在银行逗留的总时间并计算出客户在银行的平均逗留时间。通过计算机模拟的方法减少实际调查的劳动量,资金及时间耗费,轻松的得到高效的方法。第二章 系统分分析1银行行业务模模拟程序序的主要要处理对对象是“事件”,事件件的主要要信息是是事件的的类型和和事件的的发生时时刻。算算法中处处理的事事件有两两类:一一类是客客户到达达事件;另一类类是客户户离开事事件。前前一类事事件发生生的时刻刻随客户户的到来来自然形形成;后后一类事事件发生生的时刻刻由客户户办理业业务所需需时间和和等待时时间而定定。由于于程序驱驱动是按按事件发发生时刻刻的先后后顺序进进行的

8、,所所以事件件表应是是有序表表,其主主要操作作是插入入和删除除事件,用用一个单单链表表表示。2银行行业务模模拟程序序中需要要的另一一数据结结构是表表示客户户排队的的队列,由由于假设设银行有有2个窗口口,因此此程序中中需要22个队列列,队列列中有关关客户的的信息是是客户到到达的时时间和客户户办理业业务所需需要的时时间。队队列中的的队头客客户即为为正在窗窗口办理理事务的的客户,他他办完业业务离开开队列的的时刻影影响着即即将发生生的客户户离开事事件的时时刻,我我们要记记录前一一客户的的离开时时间。这这就是说说,对每每个队头头客户都都存在一一个将要要驱动的的客户离离开事件件。因此此在任何何时刻即即将发

9、生生的事伯伯只有44种可能能:1)新新的客户户到达;2)队队列1队队头客户户办完业业务离开开;3)队列列1取款款客户由由于得不不到满足足而转至至队列22;4)队队列2队队头客户户办完业业务离开开;3. 为为了使编编写的程程序具有有通用性性,在编编程序时时将银行行的营业业时间、初始存款客户办理理业务的的最长时时间及两两个客户户到达的的最大时间间间隔都都设置成成程序运运行时动动态输入入,但是是客户办办理业务务的时间间和两个个客户到到达的时时间间隔隔用随机机函数产产生的随随机数表表示。这这样可以以对程序序进行理理性的分分析,从从而实现现真正离离散事件件的模拟拟。4.测试试数据。客户的的存取款款金额,

10、不大于于50000元客户办办理业务务所要时时间,不不大于220分钟钟下个客客户到达达的时间间间隔,不不大于330分钟钟当然,系系统的模模拟性能能完全不不受这些些规定的的限制,用用户完全全可以根根据实际际需要作作简单的的修改和和调整而且以以上各模模拟量均均由随机机函数给给出,符符合离散散事件要要求第三章 概要设设计1、 银行业务务模拟程程序流程程图结束进入队列1排队服务并离开能否满足客户服务并离开进队2等待接待1个存款业务顺序检查队2能否满足取队头队头是否存在时间到?开始客户到达否 否否 是 是是 否2、本程程序包含含三个模模块主程程序模块块:voidd maain() 输出主界界面;选择操作作

11、:进入入银行业务务模拟系系统退退出程序序;Whille(进进入银行行业务模模拟窗口口)OpennForrDayy();进行初初始化操操作;输出格式式控制; 银银行业务务模拟:whille(有有要处理理的事件件时) /有事事件可处处理 DeQuueuee1(); /队列11出队列列,并用用en返返回值 if(客客户到达达)CusttomeerArrrivved(); /处处理客户户到达事事件 elsee CusttomeerDeeparrturre(); /处理客客户离开开事件 计计算出客客户的平平均逗留留时间并并输出返回主界界面:选择操作作:继续续进行业业务模拟拟退出出程序;If(选选择的是是

12、退出)退出程序序;客户到到达事件件处理模模块实现客客户信息息队列的的抽象数数据类型型客户离离开事件件处理模模块实现有有序事件件链表的的抽象数数据类型型3、函数数调用关关系如图所示示:主函数调用客户到达事件处理模块调用客户到达事件处理模块4、设定定客户信信息队列列的抽象象数据类类型定义义:ADT LiinkQQueuue 数据对象象: DD=aai|aaiQueeueEElemm,i=1,22,nn, nn0数据关系系: RR1=|aii-1,aiQueeueEElemm ,ii=2,3, ,n 基本操作作:InittQueeue(&Q)操作结果果:构造造一个空空队列。desttroyyquee

13、ue(&Q)初始条条件:队队列已存存在。操作结结果:销销毁队列列,此队队列不再再存在。EnQuueuee(&QQ,enn)初始条条件:队队列已存存在。操作结结果:新新元素een入队队列。DeQuueuee(&QQ,&een)初始条件件:队列列已存在在。操作结结果:队队头元素素出队列列,并以以en返返回其值值。QueuueLeengtth(QQ)初始条件件:队列列已存在在。操作结果果:返回回队列中中元素的的个数,即即队列长长度。 ADDT LinnkQuueuee 第四章 详细设设计1源文文件中所所包含的的头文件件#inccludde #inccludde#inccludde #inccludd

14、e2.宏定定义#deffinee MOONEYY 550000 /个个人业务务值,交交易额上上限 #deffinee OKK 1 #deffinee ERRRORR 00 #deffinee OVVERFFLOWW -22 typeedeff innt sstattus;3.定义义的结构构体typeedeff sttrucct innt aarriivettimee; /到达达时间 innt OOccuurTiime; /事件发发生时间间 innt NNTyppe; /事事件类型型,0表表示到达达事件,11表示离离开事件件。同时时用1表表示存款款,2表表示取款款。 innt dduraatio

15、on; /办办理业务务时间 loong intt mooneyy;/交易金金额Eveent,EleemTyype11;typeedeff sttrucct /等等待队列列元素 innt aarriivettimee; /到达达时间 innt dduraatioon; /办理业业务时间间 loong intt mooneyy; /交易易金额waiit,EElemmTyppe2;typeedeff sttrucct QQNodde1EleemTyype11 daata;strructt QNNodee1 *nexxt;QNoode11,*QQueuue1;typeedeff sttrucct QQ

16、Nodde2EleemTyype22 daata;strructt QNNodee2 *nexxt;QNoode22,*QQueuue2;typeedeff sttrucct Quueuee1 ffronnt; Quueuee1 rrearr;LinnkQuueuee1;typeedeff sttrucct Quueuee2 ffronnt; Quueuee2 rrearr;LinnkQuueuee2;4.全局局变量longg innt ttotaal_mmoneey; /银银行现存存资金总总额int tottal_timme; /客户户逗留总总时间int usee_tiime;/每每个顾客客

17、所用时时间int monney;/每每个顾客客办理的的款数int cloosettimee;/银行营营业时间间int INTTERTTIMEE; /下一一用户到到达的时时间间隔隔int DURRATIION; /办理业业务所需需时间int nummberr; /办理业业务的次次序int timme1; /系统统现在时时间LinkkQueeue11 Q11;LinkkQueeue22 Q22;Evennt een; /事件waitt enn1; /列列表2元元素5.初始始化队列列1stattus IniitQuueuee1()Q1.froont=Q1.reaar=(Queeue11)maallo

18、oc(ssizeeof(QNoode11); if(!Q11.frrontt)exxit(OVEERFLLOW); Q1.froont-neext=NULLL; retturnn OKK;6.初始始化队列列2stattus IniitQuueuee2()Q2.froont=Q2.reaar=(Queeue22)maallooc(ssizeeof(QNoode22); if(!Q22.frrontt)exxit(OVEERFLLOW); Q2.froont-neext=NULLL; retturnn OKK;7.销毁毁队列11stattus desstrooyquueuee1()whiile(Q

19、1.froont) Q11.reear=Q1.froont-neext; frree(Q1.froont); Q11.frrontt=Q11.reear; retturnn OKK;8.销毁毁队列22stattus desstrooyquueuee2()whiile(Q2.froont) Q22.reear=Q2.froont-neext; frree(Q2.froont); Q22.frrontt=Q22.reear; retturnn OKK;9.队列列1入队队列stattus EnQQueuue1() Quueuee1 pp,r,r1; p=(Queeue11)maallooc(ssiz

20、eeof(QNoode11); if(!p)exiit(OOVERRFLOOW); p-datta.aarriivettimee=enn.arrrivvetiime; p-datta.OOccuurTiime=en.OcccurTTimee; p-datta.NNTyppe=een.NNTyppe; p-datta.dduraatioon=een.dduraatioon; p-datta.mmoneey=een.mmoneey; r=QQ1.ffronnt-nexxt; whiile(r)iff(p-daata.arrriveetimme daata.arrriveetimme) iif(rr

21、=QQ1.ffronnt-nexxt) pp-nnextt=r; QQ1.ffronnt-nexxt=pp; ellser1-neext=p; p-nexxt=rr; r1=r;rr=r-neext;if(!r) iff(Q11.frrontt-nnextt=NNULLL) QQ1.ffronnt-nexxt=pp; QQ1.rrearr=p; QQ1.rrearr-nnextt=NUULL; ellsep-nexxt=NNULLL;Q1.rrearr-nnextt=p; Q1.reaar=pp; retuurn OK;10.队队列2入入队列stattus EnQQueuue2()Queeue

22、22 p; p=(Queeue22)maallooc(ssizeeof(QNoode22); if(!p)exiit(OOVERRFLOOW); p-datta.aarriivettimee=enn1.aarriivettimee; p-datta.dduraatioon=een1.durratiion; p-datta.mmoneey=een1.monney; p-nexxt=NNULLL; Q2.reaar-nexxt=pp; Q2.reaar=pp; retturnn OKK;11.若若队列11不空,则则删除QQ1的队队头元素素,并用用en返返回其值值stattus DeQQueuue1

23、() QQueuue1 p; iff(Q11.frrontt=QQ1.rrearr) rretuurn ERRROR; p=QQ1.ffronnt-nexxt; en.arrriveetimme=pp-ddataa.arrrivvetiime; en.OcccurTTimee=p-daata.OcccurTTimee; en.NTyype=p-datta.NNTyppe; en.durratiion=p-datta.dduraatioon; en.monney=p-datta.mmoneey; Q1.froont-neext=p-nexxt; if(Q1.reaar=p) Q1.reaar=Q

24、Q1.ffronnt; /只有有一个人人时 freee(pp); retturnn OKK;12.若若队列22不空,则则删除QQ2的队队头元素素,并用用en11返回其其值stattus DeQQueuue2() Quueuee2 pp;if(QQ2.ffronnt=Q2.reaar)rretuurn ERRROR; p=QQ2.ffronnt-nexxt; en11.arrrivvetiime=p-datta.aarriivettimee; en11.duurattionn=p-daata.durratiion; en11.mooneyy=p-daata.monney; Q2.froont-n

25、eext=p-nexxt; if(Q2.reaar=p) Q2.reaar=QQ2.ffronnt; /只有一一个人时时 freee(pp);retuurn OK;13.营营业时间间结束,全全部客户户离开银银行voidd ffreee_syysteem() desstrooyquueuee1(); desstrooyquueuee2(); 14.产产生随机机数stattus rannd_aar(iint *innterrtimme,llongg innt *monney, innt *durratiion,intt *NNTyppe)*innterrtimme=rrandd()%INTTERT

26、TIMEE+1; /下个客客户到达达的时间间间隔,不不大于IINTEERTIIME *mooneyy=raand()%MMONEEY+11; /每个顾顾客办理理的款数数,不大大于MOONEYY *duurattionn=raand()%DDURAATIOON+11; /客户办办理业务务所要时时间,不不大于DDURAATIOON *NTTypee=raand()%22; /事件类类型分为为0和11两种 retturnn OKK;15.初初始化操操作voidd OppenFForDDay() priintff( 请输入入银行的的初始存存款:); scaanf(%dd,&tottal_monney)

27、; priintff( 请输入入银行的的营业时时间(分分钟):); scaanf(%dd,&cloosettimee); priintff( 请输入入最大到到达时间间间隔(分分钟):); scaanf(%dd,&INTTERTTIMEE); priintff( 请输入入最大的的处理时时间(分分钟):); scaanf(%dd,&DURRATIION); tottal_timme=00; /客客户逗留留总时间间(初始始值) nummberr=0; /办理理业务的的次序(初初始值) IniitQuueuee1(); /初始化化队列11 IniitQuueuee2(); /初始化化队列22 en.a

28、rrriveetimme=00; /到达时时间 en.OcccurTTimee=0; /事事件发生生时间 en.NTyype=0; /事事件类型型,暂时时值en.monney=0; /交交易金额额,暂时时值en.durratiion=0; /办理理业务时时间,暂暂时值EnQQueuue1(); /事事件进队队列16.查查找上一一离开事事件的发发生时间间int finnd_lleavve() Quueuee1 pp; innt ii=0; p=Q1.froont-neext;whiile(p!=NULLL) iff(p-daata.NTyype!=0) i=p-datta.OOccuurTiim

29、e; p=p-nexxt; retturnn i;17.处处理客户户到达事事件voidd CuustoomerrArrriveed()intt innterrtimme;intt i;timme1=en.OcccurTTimee;rannd_aar(&intterttimee,&(en.monney), &(enn.duurattionn),&(enn.NTTypee);/设设置一离离开事件件插入事事件表en.NTyype+; /0变变1,11变2i=ffindd_leeavee(); /查找上上一离开开事件的的发生时时间if(i=0) /第第一位顾顾客 en.OcccurTTimee=enn

30、.arrrivvetiime+en.durratiion; eelsee iff(i=enn.arrrivvetiime)/本本事件到到达时上上一事件件还未离离开 en.OcccurTTimee=i+en.durratiion; /则此事事件的离离开时间间=上一一事件的的离开时时间+本本事件处处理时间间 elsse /上上一事件件离开之之后,本本事件才才到达 een.OOccuurTiime=en.arrriveetimme+een.dduraatioon;/则此此事件的的离开时时间=本本事件到到达时间间+本事事件处理理时间 EEnQuueuee1(); /设置置下一用用户到达达事件插插入队列

31、列1 een.aarriivettimee=enn.arrrivvetiime+intterttimee; /下一一客户到到达时间间 een.OOccuurTiime=en.arrriveetimme; een.NNTyppe=00; /暂时时值 een.mmoneey=00; /暂时时值 een.dduraatioon=00; /暂时值值 EEnQuueuee1();18.返返回队列列2的长长度int gettlonng_qq2()intt i=0; Queeue22 p; p=QQ2.ffronnt-nexxt; whiile(p) i+; p=pp-nnextt; retturnn i;

32、19.顺顺序检查查队列22是否有有满足条条件者stattus cheeck_q2() intt i,j,zz=0; i=ggetllongg_q22(); /用用i返回回队列22长度 forr(j=1;jj=ii;j+) DeQQueuue2(); /队队列2出出队,用用en11返回其其值 if(en11.mooneyy=ttotaal_mmoneey) /若若队列22出队元元素的要要交易的的金额cloosettimee) priintff(-ttt%dttt%dttt%dttt%dtt%dn,z,uuse_timme,nnumbber,z,(en11.arrrivvetiime),enn1.

33、mmoneey); elsse timme1=timme1+en11.duurattionn; /更新系系统当前前时间 usee_tiime=timme1-en11.arrrivvetiime; tottal_timme+=usee_tiime; /更更新逗留留时间 tottal_monney-=enn1.mmoneey; /更新新资金总总额 nummberr+; /更更新实现现交易的的客户数数 priintff(%ldttt%dttt%dttt%dttt%dt-%dnn,ttotaal_mmoneey,uuse_timme,nnumbber,timme1,(enn1.aarriivettim

34、ee),(en11.mooneyy); elsse /若若队列22出队元元素的要要交易的的金额银行现现存金额额,不能能办理iff(tiime11clloseetimme) prrinttf(-ttt%dttt%dttt%dttt%dt%ddn,z,usee_tiime,nummberr,z,(enn1.aarriivettimee),een1.monney); eelsee EEnQuueuee2(); /继续插插入队列列2的队队尾,继继续等待待 retturnn OKK;20.队队列1离离开事件件减duurattionn(办理理业务时时间) int cutt_duurattionn(innt

35、 ee) /e即即形参办办理业务务的时间间 Queeue11 p,q,rr; EleemTyype11 enn; p=QQ1.ffronnt-nexxt; r=QQ1.ffronnt; if(p) if(p-datta.NNTyppe!=0) q=p-nexxt; r-neext=q; /删除结结点 enn.arrrivvetiime=p-datta.aarriivettimee; /到达时时间 enn.OcccurrTimme=pp-ddataa.OcccurrTimme-ee; /事件发发生时间间 enn.NTTypee=p-daata.NTyype; /事事件类型型 enn.duurat

36、tionn=p-daata.durratiion; /办办理业务务时间 enn.mooneyy=p-daata.monney; /数数额 frree(p); EnnQueeue11(); retturnn OKK;21.处处理客户户离开事事件voidd CuustoomerrDeppartturee() intt i; i=een.NNTyppe; /业务务类型,11表示存存款,22表示取取款 timme1=en.OcccurTTimee-enn.duurattionn; if(i=OK) /是否否是办理理存款 iff(enn.OcccurrTimmecclossetiime) /营业结结束,

37、全全部客户户离开银银行 freee_ssysttem(); elsse /营营业时间间没有结结束,继继续办理理 uuse_timme=een.OOccuurTiime-en.arrriveetimme; ttotaal_ttimee+=uuse_timme; /更更新逗留留的总时时间 ttotaal_mmoneey=ttotaal_mmoneey+een.mmoneey;/更新新资金总总额 nnumbber+; /更新新服务的的客户数数 ttimee1=een.OOccuurTiime; /更新新系统当当前时间间 pprinntf(%lldttt%dttt%dttt%dttt%dtt%dn,t

38、ottal_monney,usee_tiime,nummberr,enn.OcccurrTimme,een.aarriivettimee,enn.mooneyy); cchecck_qq2(); /检查查队列22是否有有满足条条件者 elsse /办理理取款 if(en.monneytottal_monney) /办理取取款,当当申请金金额不能能满足时时,离开开队列11进入队队列2等等待 cutt_duurattionn(enn.duurattionn);/从队队列1中中删除该该结点 enn1.aarriivettimee=enn.arrrivvetiime; en11.duurattionn

39、=enn.duurattionn; en11.mooneyy=enn.mooneyy; EnQQueuue2(); /进入入队列22继续等等待 eelsee /办理取取款,当当能满足足所申请请金额时时进行队队列1 iif(een.OOccuurTiimecloosettimee)/营业结结束,全全部客户户离开银银行 freee_ssysttem(); elsee usee_tiime=en.OcccurTTimee-enn.arrrivvetiime;/顾顾客所用用时间=事件发发生时间间-事件件到达时时间 totaal_ttimee+=uuse_timme;/更新新逗留的的总时间间totaal

40、_mmoneey-=en.monney; /更新资资金总额额 timee1=een.OOccuurTiime; /更新系系统当前前时间 nuumbeer+; /更新客客户总数数 prrinttf(%lddtt%ddtt%ddtt%ddtt%ddt-%dn,tottal_monney,usee_tiime,nummberr,enn.OcccurrTimme,een.aarriivettimee,enn.mooneyy); 22.主主函数voidd maain() coutt=enddl; couut 欢迎迎使用银银行业务务模拟系系统 n; couut-enndl; couut 姓姓名:王王宁 e

41、nndl; couut 学学号: 1022205510229 eendll; couut 班班级:计计升1班班 enndl; couut=enddl; couut请选选择开始始或退出出:enndl;couut1.进入银银行业务务模拟系系统enndl;couut0.退出程程序nn; whiile(n=1) OppenFForDDay(); /初始始化操作作 couut-enndl; couttTottal_monneytusse_ttimeetnnumbbertenn.OcccurrTimmetten.arrriveetimmettmonneyeendll; whiile(Q1.froont)

42、DDeQuueuee1(); /队列11出队列列,并用用en返返回值 iif(een.NNTyppe=0)/enn.NTTypee等于00表示客客户到达达,1表表示客户户离开 CCusttomeerArrrivved(); /处处理客户户到达事事件 elsse CCusttomeerDeeparrturre(); /处理客客户离开开事件,业业务类型型en.NTyype等等于1表表示存款款,2表表示取款款 prinntf(1.营业结结束后银银行现存存资金总总额(元元): %lddn,tootall_mooneyy) ; prinntf(2.营业时时间内实实现交易易的客户户数(人人): %ddn,

43、nuumbeer);prinntf(3.客户在在银行逗逗留的总总时间(分分钟): %ddn,tootall_tiime); prinntf(4.客户在在银行的的平均逗逗留时间间(分钟钟): %fn,(flloatt)tootall_tiime/(flloatt)nuumbeer); couut-enddlenddl; coout以以上为模模拟结果果!请继继续选择择继续或或退出:enddl;coout11.继续续模拟eendll;coout00.退出出程序n;iff(n=0) couut 谢谢谢使用用本系统统,再见见!enndl; breeak; 第五章 运行与与测试1.调试试程序过程程遇到的的

44、问题及及解决的的方法 首首先是对对指针初初始化的的问题,一一些指针针如果不不先申请请一个新新变量就就会报错错,即使使是直接接把这个个指针赋赋值为空空也要现现为其申申请一个个新的空空间。其其次就是是对循环环退出条条件的选选择,有有几次发发现模拟拟过程出出现了停停止现象象,此时时发现问问题就可可以对循循环体进进行调试试,一般般只要对对循环体体内加上上一些认认为的输输出判断断它的执执行情况况就可以以比较方方便的发发现和解解决问题题。2.进入入演示程程序后,即即显示文文本方式式的主界界面窗口口:3.程序序测试结结果 在此程程序中我我通过宏宏定义语语句#ddefiine MONNEY 50000设设置了

45、个个人业务务值的交交易上限限。但系统的的模拟性性能完全全不受这这些规定定的限制制,可以通过过改变此此上限来来随机产产生不同同范围的的交易额额。用户户完全可可以根据据实际需需要作简简单的修修改和调调整。而而且时间间间隔,每每个客户户办理的的款数以以及处理理时间这这些模拟拟量均由由随机函函数给出出,符合合离散事事件要求求。为了了测试程程序的健健壮性,可可以输入入不同的的数据进进行测试试。我测试的的第一组组数据是是: 银行行初始存存款:1100000元 营业业时间:4800分钟(即即8小时时)两个客户户到达的的最大时时间间隔隔:300分钟最大处理理时间:20分分钟我测试的的第二组数据据是: 银行行初

46、始存存款:110000元 营业业时间:4800分钟(即即8小时时)两个客户户到达的的最大时时间间隔隔:500分钟最大处理理时间:10分分钟我测试的的第三组数据据是: 银行行初始存存款:1100元元 营业业时间:20分钟钟两个客户户到达的的最大时时间间隔隔:3分分钟最大处理理时间:10分分钟5.程序序退出界界面第六章 总结与与心得这是我第第一次做做课程设设计,当当听老师师说题目目时就充充满了好好奇心,以以前只是是一味的的学习书书本的知知识,这这次要理理论结合合实际的的去做一一个系统统程序,有有压力也也有动力力。拿到到自己的的任务书书时,仔仔细的阅阅读设计计要求,脑脑海中开开始寻找找合适的的数据结

47、结构来解解决这个个问题。做程序时时遇到很很多难题题,因为为程序功功能的实实现,说说起来简简单真正正实现起起来就有有点难了了。在一一遍一遍遍的分析析与调试试中,逐步的解决程程序中的的错误。这这使我懂懂得了学学习的重重要性,了了解到理理论知识识与实践践相结合合的重要要意义,充分体会到了在程序执行时的提示性输出的重要性。编写大一点的程序,应该先写出算法,再写程序,调试时一段一段调试;对于没有实现在操作用空操作代替,这样容易找出错误所在。最忌讳将所有代码写完后再调试,这样错误太难找。 通过这为为期一周周的课程程设计,使我对编程产生了更浓厚的兴趣,学会了坚持,耐心和努力,也明白了怎样把所学知识应用到现实

48、当中,激励了我的学习主动性。虽然数据结构这门课已经结束了,但是我们不会停止对这门课的研究,路漫漫其修远兮,吾将上下而求索。不断攀登科学的最高峰。深刻体会到要成为一名好的软件员,甚至一名出色的软件工程师,我还有很远的路要走。在此,对对张立红红老师的的指导表表示衷心心的感谢谢!同时时对教我我数据结结构这门门课程的的肖爱梅梅老师和和帮助过过我的同同学表示示感谢!参考文献献:1严严蔚敏、吴吴伟民主主编 数数据结构构(CC语言版版)清华华大学出出版社2200222 殷人昆昆等著数数据结构构(CC+版版)清华华大学出出版社 200013 金远平平著数数据结构构(CC+描描述)清清华大学学出版社社 2200554许许卓群等等著数数据结构构与算法法高等等教育出出版社 200045 Fraank M.CCarrranoo 等著著 数数据结构构与+高级级教程清清华大学学出版社社 2200446 严蔚敏敏、吴伟伟民数数据结构构习题集集(CC语言版版)清华华大学出出版社32

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!