c语言用switch语句编写,输入某年某月,输出该月份的天数
时间: 2024-10-24 13:18:27 浏览: 32
输出每个月的天数C语言PTA
在C语言中,你可以使用`switch`语句配合一些条件判断来计算特定月份的天数。首先,你需要知道每个月份的天数,例如大部分月份有31天,二月特殊,闰年有29天,平年有28天。以下是基本的示例代码:
```c
#include <stdio.h>
int main() {
int year, month;
printf("请输入年份和月份(格式:YYYY MM):");
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("本月有%d天\n", 31);
break;
case 4:
case 6:
case 9:
case 11:
printf("本月有%d天\n", 30);
break;
case 2: // 特殊处理二月
if (is_leap_year)
printf("二月有%d天\n", 29);
else
printf("二月有%d天\n", 28);
break;
default:
printf("无效的月份!\n");
break;
}
return 0;
}
```
在这个例子中,用户会被提示输入年份和月份,然后根据输入的月份值,`switch`语句会执行相应的代码块,打印出对应的天数。如果输入的是非整数或者不在1到12之间的月份,代码会输出错误信息。
阅读全文