leap本意是跳跃,leap year是闰年的意思。
这里和C++语法无关,只是一个自定义的标识符名称而已。

这里leap = (year % 4 ==0 && year % 100 != 0 || year %400 ==0);,就是计算右边的逻辑表达式的值,如果year满足闰年的要求,这个表达式则为1,否则为0;然后将表达式的值赋给 leap 。于是 leap 为 1 表示 year 对应的整数年份为闰年,否则为平年。
顺便,“闰年”另外一个说法是intercalary year。
====
[原创回答团]
Main()
{
int year,day,d,m,leap;
int Month[12]={31,28,31,30,31,30,31,31,30,31,30,31};
printf("Input the year and day:n");
scanf("%d",&year);
scanf("%d",&day);

if( (year%4!=0) ||( (year%100==0)&& (year%400!=0)))leap=0;//不是闰年
else leap=1;//是闰年
If(leap==1)month[1]=29;//闰年二月29天
m=1;
for(int i=0;i<12;i++)
{
d=day-month[i];
if(d>0){
day=d;
m++;//月数加1

}
else break;
}
printf(“The date is:%d年%d月%d日”,year,m,d);
}


