银行排号系统设计 C语言实现


利用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 << “请输入命令:
“;
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_testDebughuawei_test.exe

     文件     810064  2014-06-10 10:42  huawei_testDebughuawei_test.ilk

     文件    3165448  2014-06-10 10:40  huawei_testDebughuawei_test.pch

     文件    1139712  2014-06-10 10:42  huawei_testDebughuawei_test.pdb

     文件     280828  2014-06-10 10:42  huawei_testDebugmain.obj

     文件      99328  2014-06-10 10:42  huawei_testDebugvc60.idb

     文件     143360  2014-06-10 10:42  huawei_testDebugvc60.pdb

     文件       4331  2014-06-09 22:27  huawei_testhuawei_test.dsp

     文件        547  2014-06-08 15:17  huawei_testhuawei_test.dsw

     文件      50176  2014-06-10 10:42  huawei_testhuawei_test.ncb

     文件      49664  2014-06-10 10:42  huawei_testhuawei_test.opt

     文件       1301  2014-06-10 10:42  huawei_testhuawei_test.plg

     文件       5772  2014-06-10 10:42  huawei_testmain.cpp

     文件         90  2014-06-09 21:55  huawei_testqueue_system.cpp

     文件          0  2014-06-09 22:09  huawei_testqueue_system.h

     目录          0  2014-06-10 10:42  huawei_testDebug

     目录          0  2014-06-10 10:42  huawei_test

----------- ---------  ---------- -----  ----

              6315943                    17


版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。

发表评论

评论列表(条)