C++用switch+case判断闰年
时间: 2024-03-06 14:45:02 浏览: 74
C++中可以使用switch语句结合case来判断闰年。闰年是指能够被4整除但不能被100整除的年份,或者能够被400整除的年份。下面是一个示例代码:
```cpp
#include <iostream>
using namespace std;
int main() {
int year;
cout << "请输入一个年份:";
cin >> year;
switch (year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
case true:
cout << year << "年是闰年。" << endl;
break;
case false:
cout << year << "年不是闰年。" << endl;
break;
}
return 0;
}
```
在上述代码中,我们使用了switch语句来判断闰年。通过计算`year % 4 == 0 && year % 100 != 0 || year % 400 == 0`的结果,如果结果为true,则执行第一个case中的代码,输出该年份是闰年;如果结果为false,则执行第二个case中的代码,输出该年份不是闰年。
相关问题
使用switch-case) 输入年份和月份,输出这一年的这一月有多少天。需要考虑闰年。使用c++代码示例。
当然可以!以下是一个使用 switch-case 的 C 代码示例:
```
#include <stdio.h>
int main() {
int year, month, days;
printf("请输入年份和月份:");
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("输入月份错误!");
return 1;
}
printf("%d 年 %d 月有 %d 天\n", year, month, days);
return 0;
}
```
用switch判断月份天数
可以使用 switch-case 语句来判断月份的天数。示例代码如下:
```c++
#include <iostream>
using namespace std;
int main() {
int month, year, days;
cout << "Enter the month (1-12): ";
cin >> month;
cout << "Enter the year: ";
cin >> year;
switch (month) {
case 2:
if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) {
days = 29;
} else {
days = 28;
}
break;
case 4:
case 6:
case 9:
case 11:
days = 30;
break;
default:
days = 31;
break;
}
cout << "Number of days in the month: " << days << endl;
return 0;
}
```
这里使用了 if-else 语句来判断闰年,因为2月份的天数与是否为闰年有关。在 switch-case 语句中,4、6、9、11月份的天数为30天,其余月份的天数为31天。