题目描述 给定一个年份,判断其是平年还是闰年。(提示:如果年份是400的倍数,或者是4的倍数但不是100的倍数,那么称这个年份为闰年) 输入描述 一个正整数nn(1900≤n≤99991900≤n≤9999)。 输出描述 如果是闰年,那么输出YES,否则输出NO 用c语言
时间: 2024-02-01 20:14:49 浏览: 133
以下是 C 语言代码实现:
```c
#include <stdio.h>
int main() {
int year;
scanf("%d", &year);
if (year % 400 == 0 || (year % 4 == 0 && year % 100 != 0)) {
printf("YES\n");
} else {
printf("NO\n");
}
return 0;
}
```
解释一下代码的逻辑:
1. 通过 `scanf` 函数读入一个整数 `year`,表示年份;
2. 根据题目描述,判断是否为闰年,如果是,则输出 `YES`,否则输出 `NO`;
3. 如果年份能被 400 整除,或者能被 4 整除但不能被 100 整除,则为闰年。
注意事项:
1. 如果年份是 1900 年,那么输出 `NO`,因为 1900 年能被 100 整除但不能被 400 整除;
2. 如果年份是 2000 年,那么输出 `YES`,因为 2000 年能被 400 整除。
相关问题
输入年份和月份,输出该月的天数。闰年的2月是29天,平年28天,需增加对闰年的判断。 当以下情况之一满足时,这一年是闰年: 1.年份是4的倍数而不是100的倍数; 年份是400的倍数。 其他的年份都不是闰年。
要实现这个功能,你可以创建一个名为`days_in_month()`的函数,接受两个参数:年份(int)和月份(int),并根据给定规则返回相应月份的天数。下面是C语言的代码实现:
```c
#include <stdio.h>
// 判断是否为闰年
int is_leap_year(int year) {
if (year % 4 == 0) {
if (year % 100 == 0) {
if (year % 400 == 0)
return 1; // 是闰年
else
return 0; // 不是闰年
} else {
return 1; // 是闰年
}
} else {
return 0; // 不是闰年
}
}
// 根据年份和月份计算天数
int days_in_month(int year, int month) {
switch (month) {
case 1:
case 3:
case 5:
case 7:
case 8:
case 10:
case 12:
return 31;
case 4:
case 6:
case 9:
case 11:
return 30;
case 2:
if (is_leap_year(year))
return 29;
else
return 28;
default:
printf("Invalid month number. Please enter a valid value between 1 and 12.\n");
return -1; // 表示输入错误
}
}
int main() {
int year, month;
printf("Enter the year: ");
scanf("%d", &year);
printf("Enter the month: ");
scanf("%d", &month);
if (month >= 1 && month <= 12) {
int day_count = days_in_month(year, month);
if (day_count != -1)
printf("The number of days in %d-%02d is %d\n", year, month, day_count);
else
printf("Day count not calculated due to invalid input.\n");
} else {
printf("Month should be between 1 and 12.\n");
}
return 0;
}
```
在这个程序中,首先定义了一个`is_leap_year()`函数来检查给定的年份是否是闰年。然后在`days_in_month()`函数中,我们使用switch语句根据不同月份返回相应的天数,特殊情况是2月,如果输入的是闰年则返回29天,否则返回28天。
在主函数`main()`中,用户会被要求输入年份和月份,程序会根据这些值调用`days_in_month()`函数并输出结果。如果输入的月份不在1到12之间,程序会给出提示。
运用javascript实现用户输入一个年份,如 year = 2024,判断该年是否是闰年。闰年规则:年份能被 4 整除且不能被 100 整除,或者能被 400 整除。输出 "闰年" 或 "平年"。
在JavaScript中,你可以创建一个简单的函数来检查给定的年份是否为闰年。以下是一个示例函数:
```javascript
function isLeapYear(year) {
if (year % 4 === 0) { // 检查是否能被4整除
if (year % 100 !== 0 || year % 400 === 0) { // 如果不是100的倍数或者同时能被400整除,则是闰年
return "闰年";
}
}
return "平年"; // 否则是平年
}
let yearInput = prompt("请输入一个年份:"); // 获取用户输入
let enteredYear = parseInt(yearInput); // 将输入转换为整数
console.log(isLeapYear(enteredYear)); // 输出判断结果
```
这个函数首先检查年份能否被4整除,然后进一步检查它是否能被100整除并且不能同时被400整除。如果满足这些条件,那么就是闰年,否则就是平年。
阅读全文