欢迎来到天天文库
浏览记录
ID:35627392
大小:393.00 KB
页数:18页
时间:2019-04-03
《数据结构课程设计报告--银行业务活动的模拟》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、数据结构课程设计报告题目:银行业务活动的模拟学生姓名:学号:班级:指导教师:2012年6月15日一、需求分析说明1.题目要求假设某银行有4个窗口对外接待客户,从早晨银行开门起不断有客户进入银行,由于每个窗口在某个时刻只能接待一个客户。因此在客户人数众多时需要在每个窗口前顺次排队,对于刚进入银行的客户。如果某个窗口的业务员正空闲,则可上前输业务。反之,若个窗口均有客户所占,他便会排在为数最少的队伍后面。编制一个程序模拟银行的这种业务活动并计算一天中客户在银行的平均逗留时间。2.实现功能功能要求:1).
2、实现数据的输入;2).各个窗口数据的访问和输出;3)当前窗口的人员分布情况动态显示。界面要求:有合理的提示,每个功能可以设立菜单,根据提示,可以完成相关的功能要求。存储结构:运用类存储结构,进行存储。二、总体设计从题目要求不难得出,银行排队是典型的队列操作,4个窗口就是四个队列,客户的进出就是出队,入队操作,客户窗口的选择,以及平均逗留时间可以对队列的长度进行相应计算得出。因此,可以设计两个类,一个队列类,四个窗口就是四个队列对象,一个数据类,用于对客户排队编号的文件读取,写入,计算逗留时间。通过两
3、个类的连接,实现数据的输入,动态显示。三、详细设计#ifndef_BHEAD_H_#define_BHEAD_H_#defineSIZE50templateclassqueue{private:Tlist[SIZE];intfront,rear,count;public:queue();voidccust(constT&item);//客¨ª户¡ì进?队¨®Tocust();//出?队¨®voidclear();constT&getFront()const;intgetlength(
4、)const;boolisEmpty()const;boolisFull()const;Tfind(Titem);voidprint();};#endif建立一个队列的类模版Bhead.h;包括读取,存储,删除,查询等功能。一、实现代码//队列功能的实现//Bhead.cpp#include"Bhead.h"#include#includetemplatequeue::queue():front(0),rear(0),count(0){}t
5、emplatevoidqueue::ccust(constT&iteam){assert(count!=SIZE);count++;list[rear]=iteam;rear=(rear+1)%SIZE;}templateTqueue::ocust(){assert(count!=0);inttemp=front;count--;front=(front+1)%SIZE;returnlist[temp];}templateconstT&qu
6、eue::getFront()const{returnlist[front];}templateintqueue::getlength()const{returncount;}templateboolqueue::isEmpty()const{returncount==0;}templateboolqueue::isFull()const{returncount==SIZE;}templatevoidqueue<
7、T>::clear(){count=0;front=0;rear=0;}templateTqueue::find(Titem){intw=0;intk=0;if(count!=0){for(k;k<50;k++){if(item==list[k]){w=k*5;cout<<"前¡ã方¤?还1有®D"<8、out<<"找¨°不?到Ì?哦?,ê?是º?不?是º?输º?错䨪啦¤2。¡ê亲¡Á。¡ê"<voidqueue::print(){assert(count!=0);loop:for(intk=0;k
8、out<<"找¨°不?到Ì?哦?,ê?是º?不?是º?输º?错䨪啦¤2。¡ê亲¡Á。¡ê"<voidqueue::print(){assert(count!=0);loop:for(intk=0;k
此文档下载收益归作者所有