C语言请用switch语句进行程序设计,从键盘上输入一个指定年份和月份的日期,日期格式为:2018-7,判断出该月份有几天。 注:本题涉及到闰年、平年的判断,闰年的2月有29天,平年的2月有28天,已知符合下列条件之一者是润年: (1)能被4整除,但不能被100整除; (2)能被400整除。 输入输出描述如下: 输入特定日期的提示信息:"Please Input the Date:" 输入按题目要求格式的日期:"%d-%d" 输出该月份的天数n:"%d days" 如果输入数据格式有误:"Input error!\n"
时间: 2024-02-21 20:57:18 浏览: 73
用switch语句判断每个月有多少天
好的,以下是您需要的C语言代码:
```c
#include <stdio.h>
int main()
{
int year, month, days;
printf("Please Input the Date:");
if (scanf("%d-%d", &year, &month) != 2) // 判断输入格式是否正确
{
printf("Input error!\n");
return 0;
}
switch (month)
{
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
days = 31;
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
case 2:
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) // 判断是否为闰年
{
days = 29;
}
else
{
days = 28;
}
break;
default:
printf("Input error!\n");
return 0;
}
printf("%d days", days);
return 0;
}
```
希望能够帮到您!
阅读全文