输入两个整数,如2021 9,第一个表示年,第二个表示月,输出该月的天数。需要考虑闰年。如果月份错误,输出error。
时间: 2023-04-25 08:03:56 浏览: 57
好的,以下是回复:
可以使用以下代码实现:
year = int(input("请输入年份:"))
month = int(input("请输入月份:"))
if month < 1 or month > 12:
print("error")
else:
if month == 2:
if year % 4 == and year % 100 != or year % 400 == :
print("29天")
else:
print("28天")
elif month in [1, 3, 5, 7, 8, 10, 12]:
print("31天")
else:
print("30天")
以上代码中,首先通过input函数获取用户输入的年份和月份,然后判断月份是否在1-12之间,如果不是则输出error。接着判断该月份的天数,对于2月份需要考虑闰年的情况,如果是闰年则有29天,否则有28天。对于其他月份,根据月份的奇偶性来判断天数,其中1、3、5、7、8、10、12月有31天,其他月份有30天。最后输出该月份的天数。
相关问题
求一个月有多少天,用switch完成。 输入格式: 输入两个整数,如2021 9,第一个表示年,第二个表示月,输出该月的天数。需要考虑闰年。如果月份错误,输出ERROR。
好的,您的要求已经记下了,现在回答您的问题:
以下是使用 switch 语句来求一个月有多少天的代码:
```
#include <stdio.h>
int main()
{
int year, month, days;
printf("请输入年月:\n");
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("ERROR\n");
return 0;
}
printf("%d年%d月有%d天\n", year, month, days);
return 0;
}
```
如果您输入的月份是 1、3、5、7、8、10、12 中的一个,那么这个月的天数就是 31 天;如果是 4、6、9、11 中的一个,则这个月的天数是 30 天;如果是 2,则需要判断一下是否是闰年,闰年的条件是:能被 4 整除但不能被 100 整除,或者能被 400 整除。如果是闰年,则这个月有 29 天,否则这个月有 28 天。如果输入的月份不符合要求,则输出 ERROR。
希望这个回答能够解决您的问题。
switch用法输入两个整数,如20219,第一个表示年,第二个表示月,输出该月的天数。需要考虑闰年。如果月份错误,输出 ERROR 被4整除但不能被100整除或者能被400整除的年份是闰年
下面是一个使用 switch 语句实现的计算月份天数的程序:
```c++
#include <iostream>
using namespace std;
int main() {
int year, month;
cin >> year >> month;
int days = 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:
cout << "ERROR" << endl;
return 0;
}
cout << days << endl;
return 0;
}
```
程序首先读入年份和月份,然后根据月份计算天数。在 `switch` 语句的不同分支中,根据月份的不同分别计算天数,其中 2 月需要考虑闰年的情况,如果是闰年则天数是 29,否则是 28。
需要注意的是,如果输入的月份不在 1 到 12 的范围内,则输出 "ERROR"。另外,闰年的判断是通过判断年份是否被 4 整除但不能被 100 整除,或者能被 400 整除来实现的。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)