C++ 大夫值班

[复制链接]
查看11 | 回复1 | 2010-6-20 21:24:53 | 显示全部楼层 |阅读模式
#include
#include
char doc[7];
int location(char ch)
{
int i;
for( i=0;i':

b=location(p[2])-location(p[0])==p[3]-'0';

num+=b;

break;

default:

printf("error!\n");

}

}

if(n==num)

printf("%c%c%c%c%c%c%c\n",doc[0],doc[1],doc[2],doc[3],doc[4],doc[5],doc[6]);

else

printf("error!!!\n");

return 0;

}
}
这是我写的,不知道错在哪里,怎么改进!!跪求,急啊!!!
医院有A、B、C、D、E、F、G 7位大夫,在一星期内(星期一至星期天)每人要轮流值班一天,如果已知:
(1) A大夫比C大夫晚1天值班;
(2) D大夫比E大夫晚1天值班;
(3) E大夫比B大夫早2天值班
(4) B大夫比G大夫早4天值班;
(5) F大夫比B大夫晚1天值班;
(6) F大夫比C大夫早1天值班;
(7) F大夫星期四值班。
就可以确定周一至周日的值班人员分别为:E、D、B、F、C、A、G。
输入要求:先输入一个整数n,再输入n组条件,要求根据输入的条件能够确定唯一的值班表,且输入的n组条件中能够直接或间接得到任意两位大夫的关联关系,例如上面的条件(2)直接显示了D与E间的关系,而通过条件(1)、(6)、(5)可以间接得到A与B的关系。
条件输入格式有2种:
格式1:编号 比较运算符 编号 天数
其中比较运算符有2种: > 或 < ,分别表示“早”或“晚”
例如:A<C1表示:A大夫比C大夫晚1天值班
格式2:编号 = 数值

例如:F=4表示: F大夫在星期四值班
输出要求:根据输入信息,输出每位大夫在星期几值班。

回复

使用道具 举报

千问 | 2010-6-20 21:24:53 | 显示全部楼层
呃。。。没看出来你写的代码是想干什么。。有 if(doc[0]!=doc[1])的话,应该对char doc[7]有初始化吧?。。。逃~
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行