哪个大夫哪天值班
来源:互联网 发布:js加密 有用么 编辑:程序博客网 时间:2024/04/27 17:47
哪个大夫哪天值班
医院有A、B、C、D、E、F、G七位大夫,在一星期内(星期一至星期天)每人要轮流值班一天。现在已知:
A大夫比C大夫晚一天值班;
D大夫比E大夫晚二天值班;
B大夫比G大夫早三天值班;
F大夫的值班日在B和C大夫的中间,且是星期四;
请确定每天究竟是哪位大夫值班?
*问题分析与算法设计
由题目可推出如下已知条件:
*F是星期四值班;
*B值班的日期在星期一至星期三,且三天后是G值班;
*C值班的日期在星期五至星期六,且一天后是A值班;
*E两天后是D值班;E值班的日期只能在星期一至星期三;
在编程时用数组元素的下标1到7表示星期一到星期天,用数组元素的值分别表示A~F七位大夫。
#include<stdio.h>#include<stdlib.h>int a[8];char *day[]={"","MONDAY","TUESDAY","WEDNESDAY","THURSDAYT","FRIDAY","SATUDAY","SUNDAY"}; /*建 立星期表*/int main(){int i,j,t;a[4]=6; /*星期四是F值班*/ for(i=1;i<=3;i++){a[i]=2; /*假设B值班的日期*/if(!a[i+3]) a[i+3]=7; /*若三天后无人值班则安排G值班*/else{ a[i]=0;continue;} /*否则B值班的日期不断对*/for(t=1;t<=3;t++) /*假设E值班的时间*/{if(!a[t]) a[t]=5; /*若当天无人值班则安排E值班*/else continue;if(!a[t+2]) a[t+2]=4; /*若E值班两天后无人值班则应为D*/else{ a[t]=0;continue;} /*否则E值班的日期不对*/for(j=5;j<7;j++){if(!a[j]) a[j]=3; /*若当天无人值班,则安排C值班*/else continue;if(!a[j+1]) a[j+1]=1; /*C之后一天无人值班则应当是A值班*/else{ a[j]=0;continue;} /*否则A值班日期不对*/for(i=1;i<=7;i++) /*安排完毕,输出结果*/printf("Doctor %c is on duty %s.\n",'A'+a[i]-1,day[i]);exit(0);}}}}
0 0
- 哪个大夫哪天值班
- 哪个大夫哪天值班
- (百例编程)55.哪个大夫哪天值班
- 逻辑推理与判断(哪个大夫哪天值班)
- 值班
- 值班
- 值班
- 鲁大夫
- 值班归来
- 医生值班
- 医生值班
- 值班记录本
- 南有万峰,北有李大夫
- 大夫山之行
- 记广州大夫山一游
- 屠夫与大夫
- 第三方士大夫
- 第三方士大夫大概
- 静态网站迁移至阿里云OSS的实战过程
- c++ command 命令模式
- Android菜鸟之学习android源码之二(SystemUI导航栏初步认识及修改)
- js与jq中的事件委托或是事件代理详解
- 【VC++DLL动态链接库编程】VC++静态库编译(3)
- 哪个大夫哪天值班
- IEC103通信学习心得
- memcached缓存实例
- Oracle快照控制文件(snapshot control file)
- OpenStack对象存储(Swift)要领(译)-目录
- 服务器之JBoss简介
- swpu2016级第一周寒假作业题解
- python常用的一些东西——sys、os等
- Druid连接池配置