用C语言编写程序判定给定年份是否为闰年 年份由键盘输入
时间: 2024-10-18 08:21:00 浏览: 12
判断一个年份是否为闰年的规则如下:
1. 如果该年份能被4整除但不能被100整除,那么它是闰年;
2. 但是,如果该年份同时能被400整除,那么它仍然是闰年。
以下是使用C语言编写的简单程序,用于判断用户输入的年份是否为闰年:
```c
#include <stdio.h>
int is_leap_year(int year) {
if (year % 4 == 0) {
if (year % 100 != 0 || (year % 400 == 0)) { // 如果不是百年闰年或者既是百年闰年又是400倍数
return 1; // 返回1表示是闰年
}
} else {
return 0; // 非4的倍数,则不是闰年
}
return 0; // 不需要返回这个,因为前面已经进行了判断
}
int main() {
int year;
printf("请输入一个年份:");
scanf("%d", &year);
if (is_leap_year(year)) {
printf("%d年是闰年。\n", year);
} else {
printf("%d年不是闰年。\n", year);
}
return 0;
}
```
相关问题
C语言判定2000-2500中的每一年是否为闰年
在C语言中,判断闰年的规则是根据公历闰年的定义来的,即闰年满足以下条件之一:
1. 年份能被4整除但不能被100整除(除非同时能被400整除)。
以下是一个简单的C语言程序,用于判断2000年至2500年间每年是否为闰年:
```c
#include <stdio.h>
int is_leap_year(int year) {
if (year >= 2000 && year <= 2500) { // 判断年份范围
if ((year % 4 == 0 && year % 100 != 0) || (year % 400 == 0)) {
return 1; // 闰年,返回1
} else {
return 0; // 非闰年,返回0
}
} else {
printf("Year out of range.\n");
return -1; // 年份不在指定范围内,返回-1作为错误标识
}
}
int main() {
int start = 2000, end = 2500;
for (int i = start; i <= end; i++) {
int result = is_leap_year(i);
if (result == 1) {
printf("%d is a leap year.\n", i);
} else if (result == 0) {
printf("%d is not a leap year.\n", i);
} else {
// 结果已处理,在主循环外不再输出
}
}
return 0;
}
```
这个程序会检查给定的年份是否符合上述规则,并根据结果打印相应的信息。如果输入的年份不在2000至2500之间,它还会提示“年份超出范围”。
用C语言编写程序判定给定年份是否为闰年。年份由键盘输入。
在C语言中,判断一个年份是否为闰年的规则如下:
1. 如果该年份能被4整除,但是不能被100整除,那么它是闰年。
2. 如果该年份既能被400整除,又能被4整除,尽管也能被100整除,它仍然是闰年。
以下是简单的C语言函数来实现这个功能:
```c
#include <stdio.h>
int is_leap_year(int year) {
if (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)) {
return 1; // 返回1表示是闰年
} else {
return 0; // 返回0表示不是闰年
}
}
int main() {
int input_year;
printf("请输入一个年份:");
scanf("%d", &input_year);
if (is_leap_year(input_year)) {
printf("%d年是闰年。\n", input_year);
} else {
printf("%d年不是闰年。\n", input_year);
}
return 0;
}
```
在这个程序中,`is_leap_year`函数接收一个年份作为参数并返回一个整数,判断是否为闰年。在主函数`main`中,用户会被提示输入年份,然后调用`is_leap_year`函数,并根据结果打印相应的信息。
阅读全文