资源简介
利用VC++6.0开发的银行排号系统,功能如下:
1、叫号get get VIP(分优先级)
2、取号 call
3、删除
4、查找
5、统计排队人数
6、统计某一个号码之前的人数
7、重置排号系统
8、退出
代码片段和文件信息
////////////////////////////////////////////////////////////////
//银行排号系统设计
//By WeiLele 2014.06.10
//
//
//
//
//
//
//
//
////////////////////////////////////////////////////////////////
#include
#include
#include
#include
#include
#include
#include
using namespace std;
typedef struct
{
int num;
int isVIP;
}User;
int count_num; //计数值
queue q_nor;
queue q_vip;
typedef struct
{
int cmd_num; //命令符
int cmd5_NUM; //N的值
}Cmd;
Cmd cmd1;
Cmd Get_Cmd(string a);
void Client_Display(void);
void Queue_Display();
void Get();
void Get_VIP();
void Call();
void Delete();
void Count();
void CountN();
void Reset();
void Quit(bool &start_flag);
int main()
{
Client_Display();
string str;
bool start_flag = true;
while (start_flag)
{
cout << “请输入命令:\n“;
getline(cin str); //获取命令
cmd1 = Get_Cmd(str);
cout << “cmd is: “ << cmd1.cmd_num << endl;
switch (cmd1.cmd_num)
{
case 1:
{
Get();
}break;
case 2:
{
Get_VIP();
}break;
case 3:
{
Call();
}break;
case 4:
{
Delete();
}break;
case 5:
{
Count();
}break;
case 6:
{
CountN();
}break;
case 7:
{
Reset();
}break;
case 8:
{
Quit(start_flag);
}break;
default:
{
}
}
if (!start_flag)
{
break;
}
Queue_Display();
}
return 0;
}
void Client_Display(void)
{
cout << “ ////////////////////////////////////////////////////////////////////////////// “ << endl;
cout << “1: get 取号“ << endl;
cout << “2: get vip“ << endl;
cout << “3: Call 叫号 “ << endl;
cout << “4: delete 删除号码 “ << endl;
cout << “5: count 获取当前排队总人数“ << endl;
cout << “6: countN 获取号码N以前的排队人数 “ << endl;
cout << “7: reset 重置排号机“ << endl;
cout << “8: quit 退出排号机“ << endl;
cout << “ ////////////////////////////////////////////////////////////////////////////// “ << endl;
}
void Queue_Display()
{
queue q1 = q_nor;
queue q2 = q_vip;
cout << endl << “排队结果如下所示:“ << endl;
while (!q2.empty())
{
cout << “vip “ << q2.front().num << endl;
q2.pop();
}
while (!q1.empty())
{
cout << q1.front().num << endl;
q1.pop();
}
}
Cmd Get_Cmd(string str)
{
Cmd cmd1;
if (strcmp(str.c_str() “get“) == 0)
{
cmd1.cmd_num = 1;
}
else if (strcmp(str.c_str() “get vip“) == 0)
{
cmd1.cmd_num = 2;
}
else if (strcmp(str.c_str() “call“) == 0)
{
cmd1.cmd_num = 3;
}
else if (strcmp(str.c_str() “count“) == 0)
{
cmd1.cmd_num = 5;
}
else if (str.length() >= 7)
{
string str1 str2;
str1 = str.substr(0 7); //返回 0-n 字符串
str2 = str.substr(7 str.length());
cout << endl << “子串1“ << str1;
cout << endl << “子串2“ << str2;
if (strcmp(str1.c_str() “count
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 565322 2014-06-10 10:42 huawei_test\Debug\huawei_test.exe
文件 810064 2014-06-10 10:42 huawei_test\Debug\huawei_test.ilk
文件 3165448 2014-06-10 10:40 huawei_test\Debug\huawei_test.pch
文件 1139712 2014-06-10 10:42 huawei_test\Debug\huawei_test.pdb
文件 280828 2014-06-10 10:42 huawei_test\Debug\main.obj
文件 99328 2014-06-10 10:42 huawei_test\Debug\vc60.idb
文件 143360 2014-06-10 10:42 huawei_test\Debug\vc60.pdb
文件 4331 2014-06-09 22:27 huawei_test\huawei_test.dsp
文件 547 2014-06-08 15:17 huawei_test\huawei_test.dsw
文件 50176 2014-06-10 10:42 huawei_test\huawei_test.ncb
文件 49664 2014-06-10 10:42 huawei_test\huawei_test.opt
文件 1301 2014-06-10 10:42 huawei_test\huawei_test.plg
文件 5772 2014-06-10 10:42 huawei_test\main.cpp
文件 90 2014-06-09 21:55 huawei_test\queue_system.cpp
文件 0 2014-06-09 22:09 huawei_test\queue_system.h
目录 0 2014-06-10 10:42 huawei_test\Debug
目录 0 2014-06-10 10:42 huawei_test
----------- --------- ---------- ----- ----
6315943 17
评论
共有 条评论