写一个排班表,没什么头绪,如图,后面以此类推,请讲一下思路

图片说明

1个回答

按照规律就是通过“甲乙丙丁”不断设置为“正”、“副”来达到具体某天的班表作为**主要问题**吧?

我作一个简单的文字描述吧:
建立一个**变量DAY**负责保存1页的数据,你可以把1页理解为多少天。
然后建立一个**整型数组EMPLOYEE**保存“甲乙丙丁”这四个员工。
接着建立一个输出循环,控制条件是DAY,内部是对**EMPLOYEE[DAY%EMPLOYEE-1]**的循环的输出。
最后通过一个switch(int)在上面的循环中控制到底是哪一位员工。

在不考虑各种复杂操作的情况下(以最简单的代码形式就是如下)

int day = 9;
int employeeList[4] = {0,1,2,3};//不好意思,不知道你要何种语言,如果是java,抱歉,我忘了java的数组是怎样的了
int employee;
for(int i=0;i!=day;i++){
    System.out.printf("日期-星期:");
    for(int j=0;j!=2;j++){
        employee = employeeList[day%employee.length()]+j;
        switch(employee){
            case 0:System.out.printf(j?"副":"主"+"值班员甲");break;
            case 1:System.out.printf(j?"副":"主"+"值班员乙");break;
            case 2:System.out.printf(j?"副":"主"+"值班员丙");break;
            case 3:System.out.printf(j?"副":"主"+"值班员丁");break;
            default:System.out.print("Something wrong!");break;
        }
        System.out.printf("\n");
    }
}

上面没考虑的东西很多,包括Java语法,看你的备注是java的,所以尽力把我所记得的Java的东西尽量写了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问