如果要求某一天是这年的第几天,就要知道前面几个月的天数,以及本月的天数,然后相加。具体操作如下:
#include<stdio.h>
int main()
{
int year, mouth, leap,i,days;
int arr[2][13] = { { 0,31,28,31,30,31,30,31,31,30,31,30,31 },
{ 0,31,29,31,30,31,30,31,31,30,31,30,31 } };
printf("请输入年月日:");
scanf("%d %d %d", &year, &mouth,&days);
if (year % 400 == 0 || year % 4 == 0 && year % 100 != 0)
leap = 1;
else
leap = 0;
for (i = 0; i < mouth; i++)
days = days + arr[leap][i];
printf("这天是这一年的第%d天",days);
return 0;
}
与之类似的求某年某月的天数也可以用类似方法, 详情请看我的另一边博客。
C语言:求某年某月的天数