编写一个c++程序,设计一个函数year可以对键盘输入的年份,判断该年是平年还是闰年,并在该函数中输出判断结果
时间: 2023-05-30 14:04:32 浏览: 152
#include <stdio.h>
void year(int y) {
if ((y % 4 == 0 && y % 100 != 0) || y % 400 == 0) {
printf("%d年是闰年\n", y);
} else {
printf("%d年是平年\n", y);
}
}
int main() {
int y;
printf("请输入一个年份:");
scanf("%d", &y);
year(y);
return 0;
}
相关问题
输入一个年份,判断它是平年还是闰年。如果是平年,输出common year;如果是闰年,输出leap year。 注意:闰年的计算规则为:年份除以 4 可整除且除以 100 不可整除;或除以 400 可以整除。
要编写一个程序来判断给定的年份是否为闰年,你可以使用以下 C++ 代码:
```cpp
#include <iostream>
bool isLeapYear(int year) {
// 判断闰年的条件
if (year % 4 == 0) {
if (year % 100 == 0) {
if (year % 400 == 0) {
return true; // 是闰年
} else {
return false; // 不是闰年
}
} else {
return true; // 是闰年
}
} else {
return false; // 不是闰年
}
}
int main() {
int year;
std::cout << "请输入一个年份:";
std::cin >> year;
if (isLeapYear(year)) {
std::cout << year << " is a leap year." << std::endl;
} else {
std::cout << year << " is a common year." << std::endl;
}
return 0;
}
```
在这个程序中,我们定义了一个名为 `isLeapYear` 的函数,该函数接受一个整数参数 `year`,并根据闰年的计算规则来判断。如果年份满足条件(能被4整除但不能被100整除,或者能被400整除),则返回 `true`,表示是闰年;否则返回 `false`。
在 `main` 函数中,我们从用户那里获取输入,然后调用 `isLeapYear` 函数进行判断,并根据结果输出相应的消息。
如何用C++编写程序来判断用户输入的任意年份(如1996或1998)是否为平年或闰年?并举例说明闰年的规则,例如1996是闰年而1998不是?
在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的倍数,所以不是闰年。
阅读全文