该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

void call() //客服呼叫客户

{

int mywin;//客服所在窗口号 自动分配窗口改为手工分配

char mywinchar;//字符型的窗口号 0的ascii码为48

char setfree;

printf("\t【当前空闲窗口】:");

showfreewin();

printf("\t【当前客户队列情况】:");

showqueue();

printf("\n");

if(vip->size == 0 && nor->size == 0)

{

printf("\t【暂时没有客户等待服务!】\n");

service();

}

else

{printf("\t【请输入您值班的窗口号】:");

scanf("%s",&mywinchar);

mywin = mywinchar -48;//这样做可以避免输入非数字引起程序错误 但是窗口总数不能大于9!!0的ascii码为48

if(mywin >= 1 && mywin <= allwin)

{

if(win[mywin - 1] ==0) //值班的窗口为空闲状态

{

callfree(mywin);//将值班的窗口号 mywin传递给callfree函数

}

else

{

printf("\t【第%d号窗口当前为忙碌状态!】\n",mywin);

printf("\t【是否设置第%d号窗口为空闲,并继续呼叫客户?】\n",mywin);

printf("\t【请选择】:\n");

printf("\t\t\tY.是\tN.否\n");

printf("\t【您的选择】:");

scanf("%s",&setfree);

if(setfree ==*Y* ||setfree ==*y*)

{

win[mywin - 1] = 0;

callfree(mywin);//不用再次输入窗口号 将当前窗口号传递到callfree()函数 按原来的窗口号呼叫客户

}

else

{

if(setfree == *N* || setfree == *n*)

{

call();//选择其他窗口号来呼叫客户

}

else

{

printf("\t【没有这个选项!】\n");

}

}

}

}

else

{

if(mywin >= 1 && mywin <= 9)

{

printf("\t【第%d号窗口暂未开设,请确认您所在值班的窗口号!】\n",mywin);

call();

}

else

{

printf("\t【请正确输入您值班的窗口号!】\n");

call();

}

}

}

}

/*************************************************************/

void servicelogin() //登陆客服系统

{

char password[] = "1";

char pass[20]; //记录输入的密码

printf("\t【请输入登陆密码】:\t");

scanf("%s",pass);//pass是数组 不需要&

while(strcmp(pass,password) == 0) //strcmp为字符串比较函数,返回值为0表示两字符串相同

{

service();//service()函数里有跳出循环的语句 所以这里不是死循环

}

printf("\t【登陆密码错误!】\n");

hugemenu();

}

/*************************************************************/

void service()

{char menu; //客服系统里的菜单变量 若此处设置为整型 万一输入的不是数字会造成死循环 所以设置为字符型

printf("\n\t【请选择】:\n");

printf("\t\t\t1.呼叫客户\t2.队列情况\n\t\t\t3.管理窗口\t4.返回\n");

while(1)

{printf("\t【您的选择】:");

scanf("%s",&menu); // %s 比%c可靠

switch(menu)

{

case *1*:call();service();break;//文单引号表示是字符型

case *2*:printf("\t【当前队列情况】:");showqueue();service();break;

case *3*:managewin();break;

case *4*:hugemenu();break;

default:

{

printf("\t【请正确选择您的服务项目!】\n");

printf("\t\t\t1.呼叫客户\t2.队列情况\n\t\t\t3.管理窗口\t4.返回\n");

}

}

}

}

/*************************************************************/

void turnoff()

{

char password[] ="1";

char pass[30];//定义大一点 因为如果输入的字符超过数组长度,程序会出错 退出!

char sure;//确定不确定关闭

printf("\t【请输入登陆密码】: ");

scanf("%s",pass);//输入密码时 如果输入的字符超过数组长度,程序会出错 退出!属于漏洞!

if(strcmp(pass,password) == 0)//对比字符串 返回值等于意味着密码正确

{

printf("\t【关闭系统后,客户将不能排队取票!】\n\t【您确定要关闭吗?】\n\n");

printf("\t\t\tY.关闭\t\tN.保持\n");

while(1)

{printf("\t【您的选择】:");

scanf("%s",&sure); //不应该用%c 因为用%c的话 回车时会影响

if(sure == *y* || sure == *Y* ) //注意不是sure == *y* || *Y* !!!

{

printf("\t【系统关闭中...】\n");

Beep(800,300); Beep(800,300); Beep(800,800); //声音 beep(调子,时间)

exit(0);//关闭系统

}

else

{if(sure == *n* || sure == *N*)

{

printf("\t【系统未关闭 依然正常运行!】\n");

break;

}

else

{

printf("\t【关闭请按 Y 保持请按 N】\n");

}

}

}

}

else

{

printf("\t【密码错误!请重新输入!】\n");

}

}

/************************************************************/

void hugemenu()//最大的菜单

{

char menu; //服务项目菜单 采用字符型比较可靠!因为如果定义成整型,万一输入了字符,可能会造成死循环错误

while(1) //系统将一直运行 直到运行 turnoff()函数

{

printf("\n\t********************欢迎您使用本系统********************\n\n");

printf("\t【请选择服务项目】:\n");

printf("\t\t\t1.客户取票\t2.VIP服务\n\t\t\t3.客服系统\t4.关闭系统\n");

printf("\t【您的选择】:");

scanf("%s",&menu); //用%s 比%c好 %c会记录字符 而且比如输入111 就会执行getnor() 3次!如果用%s。也输入111,不同的是只执行一遍getnor 后面两个1与回车都不起作用。

switch(menu)

{

case *1*:getnor(); printf("\n\t^^^^^^^^^^^^^^^^^^^^感谢您使用本系统^^^^^^^^^^^^^^^^^^^^\n\n");break;

case *2*:getvip(); printf("\n\t^^^^^^^^^^^^^^^^^^^^感谢您使用本系统^^^^^^^^^^^^^^^^^^^^\n\n");break;

case *3*:servicelogin();break;

case *4*:turnoff();break;

default:printf("\t【暂时没有这个选项!】\n");

}

}

}

/***********************************************************/

int main()

{

vip = createqueue(n);//创建vip客户队列

nor = createqueue(n);//创建普通股客户队列

hugemenu();//调用主界面 //hugemenu()函数是无限循环函数,内部有跳出循环的语句

return 0;

}

c语言 银行叫号系统,【分享】C语言 银行取票排队系统相关推荐

  1. 用c语言完成银行排号系统,【分享】C语言 银行取票排队系统

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 void call() //客服呼叫客户 { int mywin;//客服所在窗口号 自动分配窗口改为手工分配 char mywinchar;//字符型的 ...

  2. c语言排队系统,【分享】C语言 银行取票排队系统

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 void call() //客服呼叫客户 { int mywin;//客服所在窗口号 自动分配窗口改为手工分配 char mywinchar;//字符型的 ...

  3. 火锅店的排号系统c语言代码,【分享】C语言 银行取票排队系统

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 void call() //客服呼叫客户 { int mywin;//客服所在窗口号 自动分配窗口改为手工分配 char mywinchar;//字符型的 ...

  4. 12306订票排队系统效率低下 被指存在多处漏洞

    9月18日凌晨消息,铁道部唯一的官方订票网站12306.cn周日完成了新一轮升级,但是多位用户反映,升级后用户购票可能会被强制排队,由于系统存在多处漏洞,排队后购买失败的概率很大. 家住北京亚运村的刘 ...

  5. 理发师睡觉问题、银行叫号问题详解 操作系统

    2.16.5 理发师睡觉问题 情境描述 理发店有一把理发椅子,五把等候椅子 无顾客时理发师睡觉,有则工作 顾客有空等候椅子则等候,否则离开 请用P.V操作来实现理发师睡觉问题 分析 同步过程: 理发师 ...

  6. 基于MVC的在线影票售卖系统/基于ASP.NET的电影院售票系统

    摘  要 随着电影院规模的不断扩大,人流数量的急剧增加,有关电影院的各种信息量也在不断成倍增长.面对庞大的信息量,就需要有在线影票售卖系统来提高电影院工作的效率.通过这样的系统,我们可以做到信息的规范 ...

  7. 化妆品定位取放视觉系统-东莞康耐德

    视觉系统:500W康耐德智能视觉系统 图像精度:196微米/pixel 检测效率:15pcs/s 项目情况:在传统化妆品行业中,越来越多的生产过程需要机器视觉的嵌入以提高生产线的自动化水平.化妆品盒装 ...

  8. Win11系统显示和隐藏语言栏的操作方法分享

    Win11系统显示和隐藏语言栏的操作方法分享.我们使用电脑打字的时候,系统的语音栏就会显示出来.有用户平时打字的时候觉得语言栏有点阻碍视线,看起来不太习惯,所以想要去进行语言栏的隐藏.那么我们如何去自 ...

  9. c语言编程银行排队系统,C语言_课程设计银行排队系统.doc

    C语言_课程设计银行排队系统 #include #include #include #include #include #define n 3 int vip1=0; int y,z; float s ...

  10. 用c语言银行队列系统,C语言学习之用队列实现银行排队系统

    队列操作的接口:http://blog..net/qlx846852708/article/details/43666927 数据结构C语言实现:http://blog..net/qlx8468527 ...

最新文章

  1. 亚马逊机器学习服务:深入研究AWS SageMaker
  2. k8s常用对象图示:Deployment、ReplicaSet、Pod它们的关系
  3. 美术的故事 —— 那些用技术创造艺术的游戏开发者
  4. 大数据建模、分析、挖掘技术应用研修班的通知
  5. 学习IOS 开发需要什么?
  6. Bailian2912 三个完全平方数【进制+枚举】
  7. 机电传动控制 第一周作业
  8. React-Native 相关
  9. mysql导出数据库视频教程_Navicat怎样导入导出sql文件?(图文步骤+视频教程)...
  10. 51单片机中外部中断使用示例(Protues仿真)
  11. 习题8.16 (简单方法)输入一个字符串,内有数字和非数字字符
  12. 如何制作一个简单的手机信息页面
  13. 抖音短剧本应该怎么写
  14. 微信小程序一个按钮同时获取用户信息和手机号码
  15. Eclipse不能查看Servler源码问题
  16. 计算机网络—CSMA/CD协议
  17. 激光测距VL53L0X查询方式 源代码 已测试
  18. 资产管理之输油管线RFID资产管理解决方案,避免人为破坏资产-新导智能
  19. 第一人称游戏与第三人称游戏的区别
  20. MOOC高级语言程序设计第七章课后作业

热门文章

  1. python教程简书_python教程
  2. 树形表格插件 - vue-table-with-tree-grid
  3. 【转载】移植TWRP第三方Recovery并刷入
  4. 一起玩转CAN卡“第五通道”吧!
  5. Peer-To-Peer 综述(P2P技术综述)
  6. Java爬虫学习——实例:获取起点中文网站小说并保存成txt文件
  7. 【智慧城市】-GIS数据获取SHP建筑数据获取总结
  8. 3位格雷码的顺序编码_格雷码编码规则_格雷码有什么规律
  9. 西门子dcs系统组态手册下载_和利时FM148C卡件伊春DCS系统
  10. Maven开发笔记(三)—— Maven中dependencies和dependencyManagement