求一个月有多少天,用switch完成。 输入格式: 输入两个整数,如2021 9,第一个表示年,第二个表示月,输出该月的天数。需要考虑闰年。如果月份错误,输出ERROR。 输出格式: 31 用C语言编写代码
时间: 2024-11-09 11:29:36 浏览: 43
在C语言中,你可以使用`switch`结构结合嵌套的`if`条件来计算每个月的天数,同时考虑到闰年的规则。以下是针对这个问题的一个示例代码:
```c
#include <stdio.h>
int main() {
int year, month;
scanf("%d %d", &year, &month);
// 判断闰年
int is_leap_year = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0);
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
printf("31\n"); // 大部分月份有31天
break;
case 4:
case 6:
case 9:
case 11:
printf("30\n"); // 小月有30天
break;
case 2:
// 闰年2月有29天,非闰年2月有28天
if (is_leap_year) {
printf("29\n");
} else {
printf("28\n");
}
break;
default:
printf("ERROR\n"); // 非法月份
break;
}
return 0;
}
阅读全文