C语言,闰年问题,求解

这个程序运行输入1900和2100显示是闰年但是实际不是啊。请问为什么?

if("a%400 == 0")
这里的冒号。。。

程序在这里,麻烦大家看看图片

 这个程序是哪个程序?
你需要判断
if (year % 4 == 0)
{
    if (year % 100 != 0)
        {
            return true;
        }
        else
        {
            if (year % 400 == 0)
                    return true;
                else
                    return false;
        }
}

判断条件

int main()
{
int y1,y2,n=0;
printf("请输入年份");
scanf("%d",&y1);
printf("请输入另一个年份");
scanf("%d",&y2);

for(y1;y1<y2;y1++) 
{
    if(y1%4==0&&y1%100!=0||y1%400==0)
    {
        n++;
        printf("%d\n",y1);
    }
}
printf("%d\n",n);

return 0;

}