C语言做的排队叫号系统

银行排队叫号系统

系统简介

这是一个使用C语言实现的银行排队叫号系统,支持多种业务类型的排队管理,具有叫号显示、窗口管理和统计功能。

功能特性

1. 排队号码生成

  • A类业务:个人业务(如:A001, A002, ...)
  • B类业务:对公业务(如:B001, B002, ...)
  • C类业务:特殊业务(如:C001, C002, ...)

2. 叫号功能

  • 自动分配空闲窗口
  • 显示当前办理窗口号
  • 显示业务类型和等待时间

3. 窗口管理

  • 支持最多5个服务窗口
  • 实时显示窗口状态(忙碌/空闲)
  • 显示当前办理的客户号码

4. 统计功能

  • 计算平均等待时间
  • 统计总服务客户数
  • 实时显示队列状态

系统要求

  • Windows操作系统
  • GCC编译器
  • 支持GB2312编码的控制台

编译和运行

编译程序

bash 复制代码
gcc -o bank_queue_system bank_queue_system.c

运行程序

bash 复制代码
bank_queue_system

一键编译并运行

bash 复制代码
gcc -o bank_queue_system bank_queue_system.c && bank_queue_system

使用说明

主菜单选项

  1. 取号 (A类业务) - 个人业务排队
  2. 取号 (B类业务) - 对公业务排队
  3. 取号 (C类业务) - 特殊业务排队
  4. 叫号 - 呼叫下一个客户到窗口
  5. 查看系统状态 - 显示当前窗口和队列状态
  6. 查看统计信息 - 显示平均等待时间等统计信息
  7. 退出系统 - 退出程序

操作流程

  1. 客户选择业务类型取号
  2. 系统生成对应的排队号码
  3. 工作人员点击"叫号"按钮
  4. 系统自动分配空闲窗口
  5. 显示叫号信息给客户
  6. 客户到指定窗口办理业务

系统特点

  • 队列管理:使用循环队列实现,支持最多100人同时排队
  • 时间统计:自动计算每个客户的等待时间
  • 窗口分配:智能分配空闲窗口,提高服务效率
  • 状态监控:实时显示系统运行状态

数据结构

Customer结构体

c 复制代码
typedef struct {
    char number[20];        // 排队号码
    char business_type;     // 业务类型 A/B/C
    time_t arrival_time;    // 到达时间
    time_t service_time;    // 开始服务时间
    int wait_time;          // 等待时间(分钟)
    int is_served;          // 是否已服务
} Customer;

Window结构体

c 复制代码
typedef struct {
    int window_id;          // 窗口编号
    char current_number[20]; // 当前办理的号码
    char business_type;     // 业务类型
    int is_busy;           // 是否忙碌
    time_t start_time;     // 开始服务时间
} Window;

注意事项

  1. 系统使用Windows API,仅支持Windows平台
  2. 控制台编码设置为GB2312,确保中文显示正常
  3. 时间统计精确到分钟级别
  4. 队列满时(100人)会提示无法继续取号

扩展建议

  • 添加数据持久化功能
  • 实现多线程支持
  • 添加图形用户界面
  • 支持更多业务类型
  • 添加优先级队列功能
相关推荐
IT_陈寒几秒前
Python 3.12 新特性实战:5个让你的代码效率提升50%的技巧!🔥
前端·人工智能·后端
Apifox2 分钟前
Apifox 8 月更新|新增测试用例、支持自定义请求示例代码、提升导入/导出 OpenAPI/Swagger 数据的兼容性
前端·后端·测试
风飘百里13 分钟前
Go语言DDD架构的务实之路
后端·架构
郭庆汝14 分钟前
GraphRAG——v0.3.5版本
后端·python·flask
轻松Ai享生活22 分钟前
Linux Swap 详解 (2) - 配置与优化
后端
xiguolangzi24 分钟前
springBoot3 生成订单号
后端
用户6757049885021 小时前
从入门到实战:一文掌握微服务监控系统 Prometheus + Grafana
后端
ruokkk1 小时前
AI 编程真香!我用 Next.js + AI 助手,给孩子们做了个专属绘本网站
前端·后端·ai编程
乘风破浪酱524361 小时前
Bearer Token介绍
前端·后端
AAA修煤气灶刘哥1 小时前
定时任务从入门到防坑,cron 表达式看这篇就够
java·后端