金融保险银行排队系统

上传人:蜀歌 文档编号:146014910 上传时间:2020-09-25 格式:PDF 页数:26 大小:336.76KB
返回 下载 相关 举报
金融保险银行排队系统_第1页
第1页 / 共26页
金融保险银行排队系统_第2页
第2页 / 共26页
金融保险银行排队系统_第3页
第3页 / 共26页
金融保险银行排队系统_第4页
第4页 / 共26页
金融保险银行排队系统_第5页
第5页 / 共26页
点击查看更多>>
资源描述

《金融保险银行排队系统》由会员分享,可在线阅读,更多相关《金融保险银行排队系统(26页珍藏版)》请在金锄头文库上搜索。

1、金融保险银行排队系统金融保险银行排队系统 课程设计说明书课程设计说明书 题目:银行排队系统题目:银行排队系统 班级:*班级:* 姓名:*姓名:* 学号:*学号:* 指导教师:*指导教师:* 一、需求分析一、需求分析 1 问题描述1 问题描述 在传统的银行排队中,物理排队需要人工进行排号、取号等,显得很繁琐,因此这样的 传统方式已经不能满足现代人们的需求。作为计算机专业人士,开发的软件银行排队 系统能很好地取代了这样繁琐的工作, 方便了银行工作人员的工作、 减轻了他们的工作负担 ; 也方便了办理业务的顾客, 他们只需要通过系统取号、 叫号等服务, 就能简单实现办理业务, 极大地简化了办理流程。

2、2 基本任务2 基本任务 通过实际调查分析,系统需要实现以下基本功能: (1)实现普通用户的取号、叫号、办理业务(办理窗口有 4 个) (2)实现 VIP 用户的特殊化业务办理(1 个 VIP 办理窗口) (3)银行管理员对系统信息的管理 二、概要设计二、概要设计 为了完成需求分析的基本任务,主要从以下 3 个方面进行设计: 1 主界面设计1 主界面设计 为了简化用户的操作,设计了一个多菜单选项主控菜单模块,实现了友好的用户界面。 系统主控菜单如图 1 图 1 图 1 2 数据结构设计2 数据结构设计 系统采用队列的链式结构实现顾客的 “传统物理排队”。 其中每个结点代表一位排队的 用户,结点

3、包含用户取号、对应的服务窗口信息 3 系统功能设计3 系统功能设计 (1)队列操作: void Initial(); /初始化队列 int Is_Empty(); /队列是否为空 void In_Queue(QNode * /入队 void Out_Queue(QNode * /出队 (2)函数模块: void System(); /主体函数 void Get_Time(struct tm * /获取时间 char Get_Choice(char,char); /获取正确的选择 char Start(); /开始界面同时返回用户选择 int Is_Vip(char ,char ); /判断是不

4、是vip客户 void Check_Queue(); /查看排队情况(针对于用户) void Grade(int); /评分 void Common_User(int,char ,char ); /普通用户界面 void Vip_User(); /VIP用户界面 void User(); /用户主界面 void Administrator(); /管理员界面 三、模块设计三、模块设计 1 主要模块设计1 主要模块设计 void Initial(); /初始化队列 int Is_Empty(); /队列是否为空 void In_Queue(QNode * /入队 void Out_Queue(Q

5、Node * /出队 void Get_Time(struct tm * /获取时间 char Get_Choice(char,char); /获取正确的选择 int Is_Vip(char ,char ); /判断是不是vip客户 void Check_Queue(); /查看排队情况(针对于用户) void Grade(int); /评分 2 系统子模块及其功能设计2 系统子模块及其功能设计 void System(); /主体函数 char Start(); /开始界面同时返回用户选择 void Common_User(int,char ,char ); /普通用户界面 void Vip

6、_User(); /VIP 用户界面 void User(); /用户主界面 void Administrator(); /管理员界面 3 系统模块之间的调用3 系统模块之间的调用 如图 2: 图 2 图 2 四、详细设计四、详细设计 1 数据结构设计1 数据结构设计 系统采用队列的链式结构进行排队的功能实现 队列结点定义如下: /*队列结点*/ typedef struct qq int n; /用户取号 int service; /对应的服务窗口 struct qq *next;/指针域 QNode; /*队列*/ typedef struct Q QNode *front; /头指针 Q

7、Node *rear; /尾指针 Queue; 2 系统主要模块设计2 系统主要模块设计 void Initial(); /初始化队列 int Is_Empty(); /队列是否为空 void In_Queue(QNode * /入队 void Out_Queue(QNode * /出队 void Get_Time(struct tm * /获取时间 char Get_Choice(char,char); /获取正确的选择 int Is_Vip(char ,char ); /判断是不是vip客户 void Check_Queue(); /查看排队情况(针对于用户) void Grade(int

8、); /评分 五、调试分析五、调试分析 1 主界面1 主界面 2 用户界面2 用户界面 (1) 用户主界面 (1) 用户主界面 (2) 排队取号 (2) 排队取号 (3) 查看排队情况 (3) 查看排队情况 (4) 叫号情况(4) 叫号情况 (4) 办理业务(4) 办理业务 普通用户普通用户 VIP 用户VIP 用户 3 管理员界面3 管理员界面 (1) 管理员界面 (1) 管理员界面 (2) 查看系统信息 (2) 查看系统信息 六、用户使用说明六、用户使用说明 1.进入主界面后,根据您的身份选择相应选项(用户、管理员),用户进入用户界面,管理 员进入管理员界面。 2.用户: 普通用户需要先取

9、号,然后排队等候,在排队期间、可以根据提示查看相应的信息(如 您前面的排队人数、 叫号情况等等),当您被叫号或者您前面没有人排队的时候您就可以去办 理业务了 3.VIP 用户: 根据系统的判断,如果您是 VIP 用户,您将无需排队,直接到 VIP 专属服务窗口办理业 务 4 管理员: 需要通过密码验证后,才能进入到管理员界面(管理员默认密码为:112358) 七、程序源代码七、程序源代码 /*-Head.h-*/ #ifndef HEAD1_H #define HEAD1_H /*管理员的密码为:112358*/ /*-常量、队列信息定义-*/ #define MAX 40 /用于限制字符数组

10、大小的常量 #define N 4 /普通服务柜台数 /*队列结点*/ typedef struct qq int n; /用户取号 int service; /对应的服务窗口 struct qq *next;/指针域 QNode; /*队列*/ typedef struct Q QNode *front; /头指针 QNode *rear; /尾指针 Queue; /*全局变量*/ static Queue *q; /队列 static int people; /总排队人数 static int current_people; /当前排队人数 static int common; /普通用户

11、人数 static int vip; /VIP用户办理人数 /*-队列操作的定义-*/ void Initial(); /初始化队列 int Is_Empty(); /队列是否为空 void In_Queue(QNode * /入队 void Out_Queue(QNode * /出队 /*-函数模块声明-*/ void System(); /主体函数 void Get_Time(struct tm * /获取时间 char Get_Choice(char,char); /获取正确的选择 char Start(); /开始界面同时返回用户选择 int Is_Vip(char ,char );

12、/判断是不是vip客户 void Check_Queue(); /查看排队情况(针对于用户) void Grade(int); /评分 void Common_User(int,char ,char ); /普通用户界面 void Vip_User(); /VIP用户界面 void User(); /用户主界面 void Administrator(); /管理员界面 #endif /*-函数定义-*/ #include #include #include #include #include #include #includeHead.h /*-队列操作-*/ void Initial() /

13、初始化队列 q=(Queue *)malloc(sizeof(Queue); q-front = q-rear = NULL; int Is_Empty() /队列是否为空 return(q-rear = NULL); void In_Queue(QNode * s=(QNode *)malloc(sizeof(QNode); while(p) p=p-next; people+; s-n = people-vip; /获取排队编号 if(Is_Empty() q-front = q-rear = s; else q-rear-next = s; q-rear = s; s-next = NULL; common+; current_people+; void Out_Queue(QNode * return; t = q-front; if(q-front = q-rear) q-front = q

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 商业/管理/HR > 经营企划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号