输入某年某月某日判断这一天是这一年的第几天?使用switch实现
时间: 2023-11-20 14:51:51 浏览: 140
可以使用switch语句实现输入某年某月某日判断这一天是这一年的第几天的功能。具体实现步骤如下:
1. 首先输入年、月、日三个参数。
2. 判断输入的年份是否为闰年,如果是,则将闰年标志设置为1,否则设置为0。
3. 根据输入的月份计算该月份之前的天数,累加到总天数中。
4. 判断输入的月份是否大于2,如果是并且是闰年,则总天数加1。
5. 将输入的日数累加到总天数中。
6. 输出总天数。
以下是使用switch语句实现的代码示例:
```
#include <stdio.h>
int main()
{
int year, month, day;
int days = 0;
int leap = 0;
printf("请输入年、月、日:");
scanf("%d%d%d", &year, &month, &day);
switch (year % 4 == 0 && year % 100 != 0 || year % 400 == 0)
{
case 1:
leap = 1;
break;
case 0:
leap = 0;
break;
}
switch (month)
{
case 12:
days += 30;
case 11:
days += 31;
case 10:
days += 30;
case 9:
days += 31;
case 8:
days += 31;
case 7:
days += 30;
case 6:
days += 31;
case 5:
days += 30;
case 4:
days += 31;
case 3:
days += 28 + leap;
case 2:
days += 31;
case 1:
days += day;
}
printf("%d年%d月%d日是该年的第%d天。\n", year, month, day, days);
return 0;
}
--相关问题--:
阅读全文