如何用C++编写程序来判断用户输入的任意年份(如1996或1998)是否为平年或闰年?并举例说明闰年的规则,例如1996是闰年而1998不是?
时间: 2024-12-12 09:24:49 浏览: 9
在C++中,判断闰年的规则是这样的:普通年份能被4整除的是闰年,但是100年份的倍数不是闰年;然而,400年份的倍数又是闰年。下面是一个简单的函数来实现这一判断:
```cpp
#include <iostream>
using namespace std;
bool isLeapYear(int year) {
if (year % 4 != 0) { // 非4的倍数直接返回false
return false;
}
else if (year % 100 != 0) { // 不是100的倍数,看是否是400的倍数
return true;
}
else if (year % 400 == 0) { // 是100的倍数,还得看是否也是400的倍数
return true;
}
else { // 其他都不是闰年
return false;
}
}
int main() {
int input_year;
cout << "请输入一个年份:";
cin >> input_year;
if (isLeapYear(input_year)) {
cout << input_year << "是闰年" << endl;
} else {
cout << input_year << "不是闰年" << endl;
}
return 0;
}
```
比如,1996年可以被4整除,且不是100的倍数,所以是闰年。而1998年虽然能被4整除,但由于它是100的倍数,不是400的倍数,所以不是闰年。
阅读全文