编写C语言:从键盘输入某个日期(包括年、月、日),编写程序,计算并输出这一天是该年的第多少天。

2024-11-19 08:26:31
推荐回答(1个)
回答1:

#include
struct date
{int y,m,d;};
int fun(struct date *p)
{int a=0;
switch(p->m)
{case 12:a+=30;
case 11:a+=31;
case 10:a+=30;
case 9:a+=31;
case 8:a+=31;
case 7:a+=30;
case 6:a+=31;
case 5:a+=30;
case 4:a+=31;
case 3:if(p->y%4==0&&p->y%100!=0||p->y%400==0) a+=29;else a+=28;
case 2:a+=31;
case 1:a+=p->d;
}
return a;
}
void main()
{struct date d,*pd;
int i,a,b;
pd=&d;
printf("以yy.mm.dd的格式输入一个日期\n");
scanf("%4d%c%2d%c%2d",&pd->y,&a,&pd->m,&b,&pd->d);
i=fun(pd);
printf("是该年的第%d天\n",i);
}