下面程序的功能是输入某年某月某日,计算并输出它是这一年的第几天。
程序的运行结果如下:
Please enter year, month, day:2014,12,29↙
yearDay = 363
按要求在空白处填写适当的表达式或语句,使程序完整并符合题目要求。

#include    
int  DayofYear(int year, int month, int day);
int dayTab[2][13] = {{0,31,28,31,30,31,30,31,31,30,31,30,31},{0,31,29,31,30,31,30,31,31,30,31,30,31}};
int main()
{
    int year, month, day, yearDay;
    printf("Please enter year, month, day:");
    scanf("%d,%d,%d", &year, &month, &day);
    yearDay = DayofYear(year, month, day);
    printf("yearDay = %d\n", yearDay);
    return 0;
}
 
/* 函数功能:对给定的某年某月某日,计算并返回它是这一年的第几天 */
int  DayofYear(int year, int month, int day)
{
    int  i, leap;
    leap = ________________________;  /* 若year为闰年,即leap值为1,则用第1行元素dayTab[1][i]计算;
                                       否则leap值为0,用第0行dayTab[0][i]计算 */
    for (i=1; _______; i++)
    {
        day = ________________;
    }
    return day;         /* 返回计算出的day的值 */
}

A、第18行:  ((year % 4 == 0) && (year % 100 != 0)) || (year % 400 == 0)
第20:    i 第22行:  day + dayTab[leap][i]
B、第18行:  ((year % 4 == 0) || (year % 100 != 0)) || (year % 400 == 0)
第20:    i 第22行:  day + dayTab[i][leap]
C、第18行:  ((year % 4 == 0) && (year % 100 != 0)) && (year % 400 == 0)
第20:    i<12
第22行:  day + dayTab[leap][i]
D、第18行:  ((year % 4 != 0) && (year % 100 != 0)) || (year % 400 != 0)
第20:    i<=month
第22行:  day + dayTab[i][leap]