使用c语言编写一个程序,用于确定21世纪(从2001年开始)直至给定年份的所有闰年。判断闰年的规则为:如果年份能被4整除但不能被100整除,或者能被400整除,则该年为闰年。如果没有符合条件的闰年,请输出’no’。请展示相应的代码实现。
时间: 2024-10-23 20:09:44 浏览: 18
在C语言中,我们可以创建一个函数来检查某个年份是否是闰年,并遍历整个21世纪(从2001到给定年份),打印出所有闰年。以下是一个简单的示例代码:
```c
#include <stdio.h>
// 判断是否是闰年的辅助函数
int is_leap_year(int year) {
if (year % 4 == 0) {
if (year % 100 != 0 || year % 400 == 0)
return 1; // 是闰年
}
return 0; // 否则不是闰年
}
int main() {
int start_year = 2001;
int end_year = 2050; // 示例,假设我们要检测到2050年
printf("Leap years between %d and %d are:\n", start_year, end_year);
for (int year = start_year; year <= end_year; year++) {
if (is_leap_year(year))
printf("%d ", year);
}
// 检查是否有符合条件的闰年
if (!is_leap_year(start_year) && !is_leap_year(end_year)) {
printf("\nNo leap years found in the range.\n");
}
return 0;
}
```
在这个程序中,我们首先定义了一个`is_leap_year`函数,它接受一个年份作为参数并返回1(表示闰年)或0(表示平年)。然后,在主函数`main`中,我们遍历指定范围内的每个年份,如果该年份是闰年就打印出来。最后,如果在整个范围内都没有找到闰年,我们会额外输出一条信息。
阅读全文