给年份year,定义一个宏,以判别该年份是否闰年。c++
时间: 2024-04-13 07:28:57 浏览: 8
在 C++ 中,你可以使用以下代码定义一个宏来判断给定年份是否是闰年:
```cpp
#define IS_LEAP_YEAR(year) ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0))
```
使用该宏时,将年份作为参数传递给它,它将返回一个非零值(真),表示给定年份是闰年;返回零(假),表示给定年份不是闰年。例如:
```cpp
int main() {
int year = 2024;
if (IS_LEAP_YEAR(year)) {
std::cout << year << " is a leap year." << std::endl;
} else {
std::cout << year << " is not a leap year." << std::endl;
}
return 0;
}
```
输出将是:2024 is a leap year.
相关问题
给定年份year,判别该年份是否闰年(定义一个宏以判别该年份是否闰年)
闰年的定义是公历年份是4的倍数,且不是100的倍数,或者是400的倍数。因此,我们可以定义一个宏来判断一个给定的年份是否为闰年,如下所示:
```
#define IS_LEAP_YEAR(year) (((year) % 4 == 0 && (year) % 100 != 0) || (year) % 400 == 0)
```
该宏接受一个年份作为参数,返回一个布尔值,表示该年份是否为闰年。宏的定义中使用了逻辑运算符&&和||,以及取模运算符%。
定义一个带参数的宏,以判别某个年份是否为闰年
好的,问题已经收到。以下是回答:
可以使用以下代码定义一个带参数的宏,以判别某个年份是否为闰年:
```c
#define IS_LEAP_YEAR(year) ((year) % 4 == 0 && ((year) % 100 != 0 || (year) % 400 == 0))
```
使用方法:
```c
if (IS_LEAP_YEAR(2020)) {
printf("2020 is a leap year\n");
} else {
printf("2020 is not a leap year\n");
}
```
输出结果为:"2020 is a leap year"。