为了账号安全,请及时绑定邮箱和手机立即绑定

为什么要写if(flag==1&&month>2)

#include <stdio.h>

int main() 

{

int year = 2008;

int month = 8;

int day = 8;

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("一年只有12个月!");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;

}


我没写运行了一下,出错了,但我不理解为啥要写!直接判断闰年的循环之后就让sum = sum+day+flag;为啥不行

正在回答

1 回答

因为闰年的第二个月多一天,判断是闰年得加一天

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么要写if(flag==1&&month>2)

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信