dililili
2021-08-19 14:31
#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;
}
sum = sum + day;
if (year % 400 == 0)
flag = 1;
else
flag = 0;
if (flag == 1 && month > 2)
sum++;
printf("%d年%d月%d日是该年的第%d天", year, month, day, sum);
return 0;
}
闰年条件表达式那里有问题,建议改成:(year%400==0||(year%4==0&&year%100!=0))
闰年的条件是:
①能被4整除且不能被100整除;
②能被400整除;
闰年是4的倍数且不是100的倍数,可以改成(year / 4 == 0|| year % 100 != 0)
C语言入门
928163 学习 · 21543 问题
相似问题