标题:[求助] C程序错在哪??
只看楼主
杀手的天空
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2007-5-11
 问题点数:0 回复次数:0 
[求助] C程序错在哪??

题目:
某公司有7名保安人员:赵、钱、孙、李、周、吴、陈。由于工作需要进行轮休制度,一星期中每人休息一天。预先让每一个人选择自己认为合适的休息日。请编制一程序,打印轮休的所有可能方案。当然使每个人都满意,例如每人选择的休息日如下:
赵:星期二、星期四
钱:星期一、星期六
孙:星期三、星期日
李:星期五
周:星期一、星期四、星期六
吴:星期二、星期五
陈:星期三、星期六、星期日

代码如下:

\*编译时出现100多错误,实在不知道怎么改:请大家帮帮忙~!*\

#include <stdio.h>
#include <string.h>

const char name[7][3] =
{
    {"赵"}, {"钱"}, {"孙"}, {"李"}, {"周"}, {"吴"}, {"陈"}
};
int peace[7][8] = {0};
int week[7] = {0};

void dfs(int c)
{
    int i;
    if (c >= 7)
    {
        printf("\n");
        for (i = 0 ; i < 7 ; i++)
            printf("星期%d:%s\n", i+1, name[week[i] - 1]);
    }
    else
    {
        for (i = 1 ; i <= peace[c][0] ; i++)
        {
            if (!week[peace[c][i]])
            {
                week[peace[c][i]] = c + 1;
                dfs(c + 1);
                week[peace[c][i]] = 0;
            }
        }
    }
}

int main(void)
{
    int i, j, n;

    printf("请输入各保安休假情况(0为工作,1为休假)\n");
    for (i = 0 ; i < 7 ; i++)
    {
        printf("%s:", name[i]);
        for (j = 0 ; j < 7 ; j++)
        {
            scanf("%d", &n);
            if (n) peace[i][++peace[i][0]] = j;
        }
    }

    dfs(0);

    return 0;
}

搜索更多相关主题的帖子: include 星期六 休息日 保安 
2007-05-14 14:30



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-139249-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.523027 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved