#include <stdio.h>
int main()
{
/* 定义需要计算的日期 */
int year = 2008;
int month = 8;
int day = 8;
int sum ;
/*
* 请使用switch语句,if...else语句完成本题
* 如有想看小编思路的,可以点击左侧任务中的“不会了怎么办”
* 小编还是希望大家独立完成哦~
*/
if(year%4==0&&(year%100)!=0)
{
switch(month)
{
case 1 :sum=0; break;
case 2 :sum=31; break;
case 3 :sum=60; break;
case 4 :sum=91; break;
case 5 :sum=121;break;
case 6 :sum=152;break;
case 7 :sum=182;break;
case 8 :sum=213;break;
case 9 :sum=244;break;
case 10:sum=274;break;
case 11:sum=305;break;
case 12:sum=335;break;
}
sum+=day;
printf("今天是%d年%d月%d日,是该年的第%d天",year,month,day,sum);
}
else
{
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;
}
sum+=day;
printf("今天是%d年%d月%d日,是该年的第%d天",year,month,day,sum);
}
return 0;
}
你这个printf和它的标准答案不一样就会说输出错误,尽管你的过程是全对的
他的printf应该这样printf("%d年%d月%d日是该年的第%d天",year,month,day,sum);
你试试把你的printf("今天是%d年%d月%d日,是该年的第%d天",year,month,day,sum);换成我发的,就会显示正确了