问答详情
源自:4-17 switch与if语句的应用

为什么不能是year%100==0而是=0

 int sum,flag;
    switch(month)
    {
       case 1:sum=0;break;
       case 2:sum=31;break;
       case 3:sum=59;break;
       case 4:sum=90;break;
       case 5:sum=120;break;
       case 6:sum=151;break;
       case 7:sum=181;break;
       case 8:sum=212;break;
       case 9:sum=243;break;
       case 10:sum=273;break;
       case 11:sum=304;break;
       case 12:sum=334;break;
       default:printf("一年当中只有十二个月");break;
       }
       sum=sum+day;
       if(year%400==0||(year%4==0&&year%100==0)?
            flag=1;
       else
            flag=0;
        if(flag==1&&month>2)
        sum++;
        printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);

 return 0;
}



提问者:慕码人2016687 2019-12-20 11:55

个回答

  • 苏洋哈哈
    2019-12-21 17:30:59
    已采纳

    ==是等于号,=是赋值的符号。

  • 精慕门7355420
    2019-12-25 17:01:27

    你写错了,不是year%100==0,而是year%100!=0

  • 慕码人2016687
    2019-12-23 18:54:52

    我想问的是为什么不是等于而是赋值