用switch语句实现计算某年某月有多少天,输入 两个整数表示年和月,输出一个整数,即该月的天数
时间: 2024-11-20 10:44:45 浏览: 9
在编程中,可以使用`switch`语句来处理这种基于固定规则的情况,比如根据月份确定天数。这里以C++为例,假设我们只考虑公历常规情况(平年2月28天,闰年2月29天):
```cpp
#include <iostream>
int main() {
int year, month;
std::cout << "请输入年份和月份: ";
std::cin >> year >> month;
// switch case for months
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12: // 这些是大月,每月31天
std::cout << "该月有31天\n";
break;
case 4:
case 6:
case 9:
case 11: // 这些是小月,每月30天
std::cout << "该月有30天\n";
break;
case 2: // 检查是否为闰年
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) { // 根据闰年的规则判断
std::cout << "闰年,该月有29天\n";
} else {
std::cout << "非闰年,该月有28天\n";
}
break;
default: // 输入非法月份
std::cout << "无效的月份!\n";
break;
}
return 0;
}
```
在这个例子中,`switch`根据月份的不同值执行相应的代码块,并通过`break`退出当前case。如果输入的月份不在上述范围内,则会执行默认的`default`部分。
阅读全文