C语言编程从键盘输入某年某月(包括闰年),用switch语句编程输出该年的该月拥有的天数。要求考虑闰年以及输入月份不在合法范围内的情况。已知闰年的2月有29天,平年的2月有28天。 **输入格式要求:"%d, %d" 提示信息:"Input year,month:" **输出格式要求:"31 days\n" "29 days\n" "28 days\n" "Input error!\n"
时间: 2023-07-08 20:50:50 浏览: 171
输入年和月的信息,输出该月对应的天数。注意合理性与闰年的判别。(switch语句练习)
5星 · 资源好评率100%
以下是C语言代码实现:
```c
#include <stdio.h>
int main()
{
int year, month, days;
printf("Input year,month:");
scanf("%d,%d", &year, &month);
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\n", days);
return 0;
}
```
代码中先通过scanf函数从键盘输入年份和月份,并且使用逗号作为分隔符。然后使用switch语句根据输入的月份计算出该月拥有的天数。在计算2月天数时,使用了闰年判断的方法,即判断年份是否是4的倍数且不是100的倍数,或者是400的倍数。最后输出该月的天数或者输入错误信息。
阅读全文