通过键盘输入年月日输出该日是这一年的多少天,C语言switch
时间: 2024-05-02 22:18:35 浏览: 77
c语言输入年月日,输出这是一年中的第几天
语句实现如下:
```c
#include<stdio.h>
int main()
{
int year, month, day, days = 0;
printf("请输入年月日,格式为YYYY MM DD:");
scanf("%d %d %d", &year, &month, &day);
switch(month) {
case 1: days = 0; break;
case 2: days = 31; break;
case 3: days = 59; break;
case 4: days = 90; break;
case 5: days = 120; break;
case 6: days = 151; break;
case 7: days = 181; break;
case 8: days = 212; break;
case 9: days = 243; break;
case 10: days = 273; break;
case 11: days = 304; break;
case 12: days = 334; break;
default: printf("输入错误!\n"); return 0;
}
days += day;
if((year % 4 == 0 && year % 100 != 0) || year % 400 == 0)
{
if(month > 2) days += 1;
}
printf("该日是该年的第%d天。\n", days);
return 0;
}
```
在上述代码中,我们首先通过`scanf`函数从键盘输入年月日,然后使用`switch`语句根据月份计算出该月前面所有的天数,再加上当月的天数,最终得到该日是这一年的第几天。需要注意的是,如果是闰年且该日在二月份之后,需要将天数加1。最后,使用`printf`函数输出结果。
阅读全文