#include
int judge(int year,int month){
if(year%400==0||(year%100!=0&&year%4==0)){
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:return 31;break;
case 2:return 29;//闰年2月29天
default:return 30;
}
}
else{
switch(month){
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:return 31;break;
case 2:return 28;
default:return 30;
}
}
}
int main(){
int sum=3;//2016年的剩余天数
for(int i=1;i<=12;i++)
sum+=judge(2017,i);//加上2017年12个月的天数
for(int i=1;i<=4;i++)
sum+=judge(2018,i);
sum+=7;
printf("一共有%d天。\n",sum);
return 0;
}
算法如上。答案如下,望采纳——