- 1、本文档共20页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
石家庄经济学院
本科生课程设计报告书
题 目 一个银行业务模拟的程序
学 院 信息工程学院
专 业 计算机
指导教师
完成日期: 2009-6-25
银行业务模拟
一、需求分析
1程序问题描写:
本程序为银行客户业务模拟, 其业务模拟分为两种: 第一是申请从银行得到一笔资金,即取款或借款。第二是向银行投入一笔资金,即存款或还款。银行有两个服务窗口,相应地有两个队列。第一客户到达银行后先排第一个队。处理每个客户业务时,且申请额超出银 行现存资金总额而得不到满足,则立刻排入第二个队等候,直至满足时才离开银行;否则业务处理完后立刻离开银行。每接待完一个第二种业务的客户,则顺序检查和处理(如果可能)第二个队列中的客户,对能满足的申请者予以满足,不能满足者重新排到第二个队列的队尾。在此检查过程中,一旦银行资金总额于或等于刚才第一个队列中最后一个客户(第二种业务)被接待之前的数额,或者本次已将第二个队列检查或处理了一遍,就停止检查(因为此时已不可能还有能满足者)转而继续接待第一个队列的客户。任何时刻都只开一个窗口。假设检查不需要时间。营业时间结束时所有客户立即离开银行。
银行业务的事件驱动模拟系统,通过模拟方法求出客户在银行内逗留的平均时间。3. 演示程序以用户与计算机交互方式执行,即在计算机终端上显示提示信息 之后,由用户在键盘上输入演示程序中规定的运算命令;相应的输入数据(滤去输入中的非法字符)和运算结果显示在其后。
4.数据测试
一天营业开始时银行拥有的款额为10000(元),营业时间为600(分钟)。其他模拟参
量自定,注意测定两种极端的情况:一是两个到达事件之间的间隔时间很短,而客户的交易时间很长,另一个恰好相反,设置两个到达事件的间隔时间很长,而客户的交易时间很短。
二、概要设计
1基本要求:
用动态存储结构以及队列来实现
2所需的数据类型
为实现上述程序功能,应以需要定义单链表的抽象数据类型以及队列集合并还需要用到结构体。为此,需要两个抽象数据类型:单链表和队列还有结构体声明。
(1)ai-1, ai,在存储地址中可以不相邻,既地址不连续。不同的教材的表示基本是一致的。
typedef struct LNode
{ ElemType data; /* 数据子域 */
struct LNode *next; /* 指针子域 */
}LNode; /* 结点结构类型 */
(2)
typedef struct QNode
{ QElemType data;
struct QNode *next;
}QNode,*QueuePtr;
typedef struct{
QueuePtr front;//头指针
QueuePtr rear;//尾指针
}LinkQueue;
InitQueue(LinkQueue Q)
操作结果:构造一个空的队列。
DestroyQueue (LinkQueue Q)
初始条件:队列Q已存在。
操作结果:销毁队列Q。
QueueLength(LinkQueue Q)
初始条件:队列已存在。
操作结果:返回队列的长度。
QueueEmpty(LinkQueue Q)
初始条件:队列已存在。
操作结果:队列为空表,则返回True,否则返回 False。
ClearQueue(LinkQueue Q)
初始条件:队列已存在。
操作结果:清空队列
EnQueue(LinkQueue *Q,int x);
初始条件:队列已存在。
操作结果:插入元素为x的新的对尾元素
DeleteQueue(LinkQueue *Q,int e)
初始条件:队列已存在。
操作结果:删除对头元素,用e返回。
(3)定义结构体的一般格式:
struct 结构体类型名
{ 类型名1 变量名1; //数据子域
类型名2 变量名2;……
类型名n 变量名n;
};
其中struct是保留字。结构体类型名由用户自己命名。在使用时必须声明一个具体的结构体类型的变量,声明创建一个结构体变量的方法是:
struct 结构体类型名 结构体变量名;
4程序包括三个模块
1)主函数模块
main()
{
初始化:
while(命令!=退出)
{
您可能关注的文档
- ML280螺旋钻采煤机推进机构的设计.doc
- X省重点水源工程测量技术报告.doc
- 现YT4543型组合滑台液压系统原理与故障分析.doc
- 现PLC立体库控制系统大全.doc
- Y225S-4 37kW鼠笼式异步电机设计.doc
- Z3040摇臂钻床主轴Z向进给系统改造设计.doc
- YZ90机油冷却器气密性能自动测试台的设计.doc
- z3040摇臂钻床的plc改造毕业设计.doc
- Z3132型万向摇臂钻床变速箱的改进设计.doc
- 现Z3050摇臂钻床的设计.doc
- 2025年春新北师大版八年级物理下册全册课件.pptx
- 2025年春新北师大版八年级物理下册全册教学课件.pptx
- 2025年秋季新北师大版八年级上册物理全册教学课件.pptx
- 2025年秋季新人教版九年级上册化学全册课件.pptx
- 2025年新人教版八年级上册物理全册课件.pptx
- 2025年秋季新人教版九年级上册化学全册教学课件(新版教材).pptx
- 新人教版七年级上册英语全册课件(2025年新版教材).pptx
- 锂离子电池前驱体磷酸铁合成方法研究现状及展望.docx
- 2024年东盟石油和天然气更新报告(英文版)-东盟.docx
- DB3209_T 1207.2-2022 建设工程档案管理 第二部分:房屋建筑工程文件归档和档案移交范围.docx
文档评论(0)